ActiveMQ中的Jetty:Web控制台URL

时间:2011-08-16 14:27:33

标签: jetty activemq

我有一台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控制台。

然后我又遇到了另一个问题:当我尝试访问

http://myapp.com

我被引导到ActiveMQ的Web控制台。

问题:如何配置ActiveMQ以便

a)ActiveMQ Web控制台可通过端口80在http://AAA.BBB.CCC.DDD/activemq

等URL上使用

b)我的网络应用程序照常在http://myapp.com

上工作

1 个答案:

答案 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