我已经看到了其他一些SO问题,但我似乎无法让它们中的任何一个起作用。在设置新的,更新的主机后,我正在逐步淘汰旧的web服务器。我不想将我的站点从旧服务器完全迁移到新服务器,我只需要旧服务器更长一段时间,而新服务器是面向网络的。
旧服务器配置为虚拟主机www.example.net,LAN IP 10.0.0.11。新服务器配置为dev.example.net,LAN IP 10.0.0.12。我希望新服务器提供对dev.example.net的请求,但是将对www.example.net(和example.net)的请求转发给旧服务器。我在www.example.net.conf中的sites-available
中有这个 <VirtualHost *:80>
ServerName example.net
ServerAlias www.example.net.net
RewriteEngine On
RewriteRule ^(.*)$ http://10.0.0.11$1 [P]
我有什么遗漏的吗?旧机器配置上是否需要有任何东西?有了这个当前配置,我得到了 “故宫 您无权访问此服务器上的/。“
旧服务器使用我的主要网站响应http://10.0.0.11,并且没有禁止的消息。
我感谢任何和所有的答案,我为重复的问题道歉,但我不太明白如何使其他问题符合我的目的,因为大多数问题都是完全重定向,或者特别是重定向到IP没有主机名。
答案 0 :(得分:0)
错误消息的一个可能原因是没有在新服务器上加载mod_proxy模块。 [P]导致apache使用mod_proxy来处理标志;在我的服务器上,当我从配置中删除mod_proxy时,它提供了403 Forbidden消息,而不是应用RewriteRule。
注意,您当然可以简单地使用[R]标志来引起重定向,但这对客户端浏览器是可见的。