【发布时间】:2014-02-10 08:31:59
【问题描述】:
我有一个服务器server.example.com,它通过ProxyPass/ProxyPassReverse 到8080 为端口80 上的Tomcat 和server.example.com:8001 的同一框上的Drupal 站点提供服务。如果我明确输入端口 8001,则 Drupal 站点运行正常,但我需要通过 server.example.com/blog 访问它,所以我为 /blog http://server.example.com:8001 创建了一个 ProxyPass/ProxyPassReverse,它为 Drupal 站点提供初始页面正确,但是一旦填写并提交了 Drupal 主页上的表单,即 POST 到/,该站点将更改为 Tomcat 站点,可能是因为 / 与 post:8001 上的当前主机无关。如何使/blog 的ProxyPass 保持持久性,以便所有后续请求都保留在:8001 VirtualHost(Drupal 站点)内?
我尝试过的一件事是使用 mod_rewrite:
RewriteCond %{HTTP_REFERER} /^blog/.*$
RewriteRule (.*) %{HTTP_HOST}:8001/$1 [L,P,NC]
但据我所知,这根本没有任何作用。我希望如果最初的请求是针对 /blog 的,那么推荐人也会如此,并且我可以将请求保留在 :8001 虚拟主机上。也许有人可以解释为什么这是有缺陷的。
【问题讨论】:
标签: apache http virtualhost mod-proxy