我的重定向链。我对为什么有些困惑 每个页面都将转到新域之前的主页。
因此,在我在此处输入的单个示例中, www.myolddomain.com/2014/10 / 依次转到 www.myolddomain.com 和 www。 mynewdomain.com
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) /$ [NC]
RewriteRule ^/.+ / [R=301,L]
RewriteRule ^(.*[^/])$ /$1/ [L,R=301]
</IfModule>
RewriteCond %{HTTP_HOST} ^www\.myolddomain\.com [NC]
#Redirect site
RewriteRule ^/? https://www.mynewdomain.com? [R=301,L]
#redirects
RewriteRule ^/?2014/10/ https://www.mynewdomain.com/mypage/? [R=301,L]
我的htaccess知识有限,所以我很难发现问题。 任何帮助深表感谢。谢谢
答案 0 :(得分:1)
您的重定向规则应该在其他重写规则之前位于顶部
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.myolddomain\.com [NC]
RewriteRule ^/? https://www.mynewdomain.com? [R=301,L]
#redirects
RewriteRule ^/?2014/10/ https://www.mynewdomain.com/mypage/? [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) /$ [NC]
RewriteRule ^/.+ / [R=301,L]
RewriteRule ^(.*[^/])$ /$1/ [L,R=301]
</IfModule>