我怎么能redirect两个域在同一台服务器上..让说这个域
http://www.game.com -> http://www.games.com http://game.com -> http://www.games.com http://games.com -> http://www.games.com (*this is not redirecting*)
所有的域名都应该redirect到这个域名http://www.games.com
inheritance人当前的htaccess内容
RewriteCond %{HTTP_HOST} ^game.com$ [OR] RewriteCond %{HTTP_HOST} ^www.game.com$ RewriteRule ^/?$ "http\:\/\/www\.games\.com\/" [R=301,L] RewriteCond %{HTTP_HOST} ^games.com$ [OR] RewriteCond %{HTTP_HOST} ^www\.game.com$ RewriteRule ^/?$ "http\:\/\/www\.games\.com\/" [R=301,L]
每个人都喜欢使用mod_rewrite的时候,往往有一个简单的方法做同样的事情。 这使用mod_alias。
<VirtualHost *:80> ServerName game.com ServerAlias www.game.com ServerAlias games.com Redirect permanent / http://www.games.com </VirtualHost> <VirtualHost *:80> ServerName www.games.com . . . </VirtualHost>
mod_rewrite似乎矫枉过正。 如果您有权访问vhostconfiguration,则可以通过在单个虚拟Hosts中捕获Hosts并使用RedirectMatch来简化。
<VirtualHost *:80> ServerName games.com ServerAlias game.com www.game.com RedirectMatch permanent .* http://www.games.com/ </VirtualHost>
最后一个RewriteCond不应该是必须的 – 这是第一条规则中第二个条件的重复。
没有看到完整的Apacheconfiguration,我不能肯定地说,但是根据我的经验,这种问题最常见的原因是,当你重写的虚拟主机实际上并没有覆盖主机名时,其他虚拟主机configuration正在使用的域名。