我在两个不同的域上有两个网站。一个在 domain.com 上,另一个在 domain.es 上。
我正在 domain.es 上关闭网页,但首先我必须将每个请求重定向到 domain.es 到 domain.com 。这很简单,我已经使用RewriteCond
& RewriteRule
,就像这样:
www.domain.es / - 重定向至 - >的 www.domain.com /
但我现在遇到了问题。我还需要将一个特定页面从 domain.es 重定向到 domain.com ,如下所示:
www.domain.es/a_page / - 重定向到 - >的 www.domain.com/another_page /
我在使用这两个规则重定向时遇到问题,因为当apache检测到对 www.domain.es/a_page 的请求时,它会转到 www.domain.com / ,而不是我需要的特定页面。
我在虚拟主机中有这个:
RewriteCond %{HTTP_HOST} ^domain.es/a_page/
RewriteRule ^(.*)& http://www.domain.com/another_page/ [R=301,L]
RewriteCond %{HTTP_HOST} ^domain.es/
RewriteRule ^(.*)& http://www.domain.com/ [R=301,L]
我有[L]
标志,所以apache会stop processing rules,但这不起作用。
任何帮助都将不胜感激。
答案 0 :(得分:0)
RewriteCond %{HTTP_HOST} ^domain.es/a_page/
上面的行永远不会匹配任何内容 - 您要问主机是否等于domain.es/a_page/
,这是一个主机以及一个路径。您只需要测试主机名,然后根据路径重定向,例如
RewriteCond %{HTTP_HOST} ^domain\.es
RewriteRule ^a_page/ http://www.domain.com/another_page/ [R=301,L]