2012-08-15 48 views
1

我有一台专用的服务器,我分成了更多的虚拟服务器。 在主服务器上,我使用http(80)的标准端口,但对于其他人,我被迫设置不同的端口。 但我有一些备用域名。 当用户通过特定域名时,什么是最好的方式使不可见的重定向到另一台服务器? 我不想使用iframe或重定向到其他网站。我希望域名能够像共享的虚拟主机一样行事。但是用不同的服务器。Apache虚拟服务器之间的域名重定向

可以吗? 我知道apache获取有关来自哪个域用户的信息。 我想用虚拟主机做到这一点,如果可能的话。

<VirtualHost *> 
ServerName mydomain 
ServerAlias mydomain 
some redirection 
CustomLog /var/log/apache2/mydomain.access.log combined 
ServerAdmin myemail 
</VirtualHost> 

在此先感谢:]

回答

1

既然你有访问服务器的配置,看看在ProxyPass, ProxyPassMatch, and ProxyPassReverse指令是mod_proxy的一部分。在使用这些指令之前,您需要确保模块已加载。

一般情况下,在你的MYDOMAIN配置,说你想有游客看到的网站在http://myother.domain.com/当他们去http://mydomain/other,你只需要添加:

ProxyPass /other http://myother.domain.com/ 
ProxyPassReverse /other http://myother.domain.com/ 

ProxyPassReverse是确保代理位置响应被重写。例如,如果http://myother.domain.com/的页面返回301重定向到http://myother.domain.com/newimage.gif,则此指令将内部重写响应的位置从http://myother.domain.com/newimage.gif改为http://mydomain/other/newimage.gif,因为它将被再次代理。

如果您有Cookie域也需要重写,请参阅ProxyPassReverseCookieDomainProxyPassReverseCookiePath

+0

感谢您的回答:] – user1159144 2012-08-15 20:23:38

相关问题