Linux中的ActiveMQ8161端口本机无法访问解决方案

最近在Linux上学习ActiveMQ时,发现在虚拟机或者云服务器上开启的ActiveMQ服务,在本机使用http://ip:8161"无法访问。在尝试了各种方法后,发现错误并没有我认为的那么复杂。这篇博客也是想让其他人不要走这么多弯路,更为了提醒自己这类错误以后的解决方法。

1. 在Linux环境下,第一点需要注意的就是查看端口是否开放

注意CentOS的版本,版本不同,设置防火墙的shell语句可能不同,本人使用的语句对应的时ContOS7的firewall

firewall-cmd --list-port #查看开放的端口,如果不包括8161/tcp,则继续执行以下语句
firewall-cmd --zone=public --add-port=8161/tcp --permanent #将端口8161设置为永久生效的公共端口
firewall-cmd --reload #重新加载,使端口生效

如果使用的是阿里云服务器,还需要去安全组中进行设置,在这里就不展开说了

2.在ActiveMQ的配置文件中进行端口设置

如果对Linux的端口进行设置之后还是无法访问,可能还需要对ActiveMQ的配置文件进行设置。
ActiveMQ启动加载的配置文件是activemq.xml,该文件在ActiveMQ的conf目录下。但是需要修改的文件不是activemq.xml,因为文件引用了该目录下的jetty.xml,需要修改该文件中配置的端口,将其设置为0.0.0.0

<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
         <!-- the default port number for the web console -->
    <property name="host" value="0.0.0.0"/>
    <property name="port" value="8161"/>
</bean>

这时我的问题已经解决了!你的呢?

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐