Apache 中的 Proxypass 问题

Apache 中的 Proxypass 问题

我正在将一个网站反向代理到另一个网站。它运行良好,但在某些链接上它会显示原始链接。这是我的配置

原始网站“mysite.com”

通过代理传递到“mysite.com”的第二个站点配置

<VirtualHost *:80>
   ServerName test.mysite.com
   ServerAlias www.test.mysite.com test.mysite.com

   ErrorLog /var/log/apache2/test.mysite_log.log
   TransferLog /var/log/apache2/test.mysite-access_log.log
   LogLevel info
   LogFormat "%h %l %u %t \"%r\" %>s %b %T" common

   ProxyPass / http://mysite.com/
   ProxyPass / http://mysite.com/
   ProxyPassReverse / http://mysite.com/
</VirtualHost>

现在,一切都运行良好,但问题是,当我转到某个特定链接时,它会将我重定向到原始链接。例如,我的页面上有两个部分:“关于我们”和“咨询”。当我点击“关于我们”时,它会将我带到“http://test.mysite.com/about-us“没关系

当我点击“查询”时,它会带我到“http://mysite.com/inquiry“这是不正确的,一定是”http://test.mysite.com/inquiry“。

我想我漏掉了一些要在配置文件中添加的东西,但我无法弄清楚。

答案1

ProxyPassReverse仅重写 HTTP 标头。它与原始页面中的完整 URL 无关。

你可能想要使用第三方模块 - 比如mod_proxy_html

相关内容