RabbitMQ和程序运行在同一台电脑上可以使用guest账号访问

如果不在同一台电脑,就会报错

RabbitMQ.Client.Exceptions.BrokerUnreachableException:“None of the specified endpoints were reachabl

需要添加一个新用户,guest账号只能本地登陆

命令行添加方式(来自:https://blog.csdn.net/qq_45760401/article/details/125134766)

    通过 guest 只能本地访问 localhost:15672/,并不能实现远程访问,所以当远程访问时,需要添加新用户才能访问。
    1、进入 RabbitMQ 的 sbin 目录,打开 cmd
    2、输入 rabbitmqctl add_user myRoot 123
        创建一个叫 myRoot 密码 123 的用户
    3、输入 rabbitmqctl set_user_tags myRoot administrator 设置用户为管理员
    4、输入 rabbitmqctl add_vhost VHOST 创建一个叫 VHOST 的虚拟用户目录
    5、rabbitmqctl set_permissions -p VHOST myRoot ".*" ".*" ".*" 为用户设置权限
    
    到这里,就可以通过 目标ip:15672/ 访问远程 rabbitmq 了,前提是从你这里的电脑到目标服务器中途的所有防火墙都允许15672端口的访问,如果是在阿里云上面的服务器,那么不仅需要打开服务器的端口,还需要打开阿里云的端口

    6、如果是在程序代码里使用 rabbitmq,还需要打开所有防火墙的 5672端口,因为 rabbitmq 的默认监听端口是 5672,网页管理的端口是 15672,这两个端口不能混为一谈。
    
    最后:由于编文的时间是晚上接近于 1200 左右,上面的命令可能会存在输错的现象,如果发现错误,请以下图为准。

 

 

 界面添加方式

 

1 首先创建一个新的账户 并给上Administrator标签

 

2 然后给这个新账户添加虚拟主机访问权限

当然也可以新建一个Virtual Hosts,给新建用户赋权限(Set permission)

3 同样记得开放相关端口(15672、5672),程序使用的是5672端口,远程web管理使用15672端口。

 

                var factory = new ConnectionFactory()
                {
                    HostName = optionMQ.HostName,
                    Port = optionMQ.Port,
                    VirtualHost = optionMQ.VirtualHost,

                    DispatchConsumersAsync = true
                };
                if(optionMQ.UserName!=null)
                {
                    factory.UserName = optionMQ.UserName;
                }
                if (optionMQ.Password != null)
                {
                    factory.Password = optionMQ.Password;
                }
                //factory.Port = 5672;
                //factory.VirtualHost = "VH01";
  

 

原文地址:http://www.cnblogs.com/djd66/p/16820766.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性