我有一台ubuntu机器,
a)Web应用程序(Tomcat,在URL http://myapp.com上)和
b)消息队列代理(ActiveMQ)
正在运行。
ActiveMQ有一个Web控制台,通常在端口8161上运行(即http://AAA.BBB.CCC.DDD:8161/admin,其中AAA.BBB.CCC.DDD是机器的IP地址。)
由于我办公室的防火墙限制,我无法访问Web控制台,如果它在端口8161上运行,8080也不起作用。
但是,如果我使用端口80(http),我可以访问Web控制台。
然后我又遇到了另一个问题:当我尝试访问
时我被引导到ActiveMQ的Web控制台。
问题:如何配置ActiveMQ以便
a)ActiveMQ Web控制台可通过端口80在http://AAA.BBB.CCC.DDD/activemq和
等URL上使用b)我的网络应用程序照常在http://myapp.com
上工作
答案 0 :(得分:3)
要更改contextPath / port,只需修改/activemq/conf/jetty.xml文件,就像这样......
<bean class="org.eclipse.jetty.webapp.WebAppContext">
<property name="contextPath" value="/activemq" />
...
<bean id="Connector" class="org.eclipse.jetty.server.nio.SelectChannelConnector">
<property name="port" value="80" />
</bean>
话虽如此,听起来你已经在端口80上运行了一个Tomcat应用程序。在这种情况下,您需要将AMQ Web控制台嵌入Tomcat(作为单独的应用程序),而不是通过代理/ Jetty单独运行它。有关执行此操作的详细信息,请参阅this page