每个主机使用RewriteCond的htaccess规则

时间:2014-02-10 09:07:28

标签: .htaccess

我想在我的htaccess中使用以下规则将一个url转发到另一个url但它不起作用。有人能帮助我吗?

RewriteCond %{HTTP_HOST} ^(.*)mydomain\.com [NC]
RewriteRule /cms-page.html http://www.mydomain.com/second-cms-page.html [L,R=301]

以下规则正在运行,但它会转发整个域

RewriteCond %{HTTP_HOST} ^(.*)mydomain\.com [NC]
RewriteRule ^(.*)$ http://www.mydomain.com/second-cms-page.html [L,R=301]

我无法使用“RedirectPermanent”,因为我无法指定主机。这是必要的,因为有多个域访问相同的htaccess

1 个答案:

答案 0 :(得分:0)

从正则表达式中删除前导斜杠:

RewriteCond %{HTTP_HOST} mydomain\.com [NC]
RewriteRule ^cms-page\.html$ http://www.mydomain.com/second-cms-page.html [L,R=301,NC]
  • .htaccess是每个目录指令,Apache从RewriteRule URI模式中剥离当前目录路径(从而导致斜杠)。