我们目前有一个托管在单台机器上的网站。由于论坛的流量不断增加,我们想将该论坛移至新机器,但主要保留 URL 结构以保持我们的 Google Mojo。
今天:
IP1 = www.domain.com IP1 = www.domain.com/forum
移动后:
IP1 = www.domain.com IP2 = www.domain.com/forum
这可以用 apache 完成吗?或者我们是否需要某种代理?
答案1
这可以通过 apache 和 mod_rewrite 来实现,但是在被代理到第二台服务器之前,流量仍然会到达第一台服务器。
更好的解决方案是设置一个子域名 forum.domain.com,并将其托管在第二个 IP 地址上。然后在第一个服务器上为 /forum 地址设置 301 永久重定向。Google 会将此理解为同一网站的地址更改,并且您不会因进行此更改而丢失任何内容。重定向将照顾到所有已将旧 URL 添加到书签的客户。
答案2
在 IP1 上使用 mod_proxy:
<VirtualHost *:80>
.........
ProxyPass /forum http://IP2/forum
ProxyPassReverse /forum http://IP2/forum
ProxyPreserveHost On
<proxy>
Order deny,allow
Allow from all
</proxy>
</VirtualHost>
图片: