我有一个Apache服务器,我想用代理访问我的activeMQpipe理页面。 我能够正确加载初始着陆页,但似乎无法加载任何子页面(队列,连接等)。 我在Apache服务器上的proxypass规则如下:
ProxyPass /foo http://10.5.124.108:8161/admin ProxyPassReverse /foo http://10.5.124.108:8161/admin
activeMQ安装在/etc/httpd/conf.d/中包含一个activemq-httpd.conf文件。 代理连接已启用:
ProxyRequests On ProxyVia On <Proxy *> Allow from all Order allow,deny </Proxy> ProxyPass /admin http://localhost:8161/admin ProxyPassReverse /admin http://localhost:8161/admin ProxyPass /message http://localhost:8161/admin/send ProxyPassReverse /message http://localhost:8161/admin/send
从我读过的代理通行规则应该是recursion的(/ foo的规则也适用于/ foo / bar)。 还有什么我在这里失踪,阻止我访问页面超出最初的pipe理着陆页?
mod_proxy不会重写目标页面中的链接,因此当您可以查看初始页面时,常见的问题是指向子页面的链接包含主机名或URL,该主机名或URL不会指向您拥有的代理前端进入。 这应该很容易在html源代码或只是hover在链接上。
如果发生这种情况,可以将AMQconfiguration为使用代理主机的主机名而不是自己的主机名。
代理通行证URL是recursion的,但是只有当链接正确时才是recursion的。 如果你重新映射/消息到/ admin / send,那里有一个链接去/ admin / send / foo – 它不会被redirect到/ message / foo。 你可能会添加一些mod_rewrite foo来实现,但我不相信它是mod_proxy的一部分。