我在/ forum /目录中有这个.htaccess。现在我想添加另一个规则:所有格式与这两个规则中指定格式不同的URL必须从old-domain.com/forum/*重定向到new-domain.com/forum /。
我需要永久重定向。
所需重定向的示例:
from old-site.com/forum/members/15-username
to new-site.com/forum/
实际.htaccess:
RewriteEngine On
RewriteBase /forum/
RewriteCond %{HTTP_HOST} ^(?:www\.)?old-domain\.com$ [NC]
RewriteRule ^([^/]+)/([^-]+)-([^/]+)/?$ http://new-domain.com/forum/$1/$3.$2 [L,R=302,NE]
RewriteCond %{HTTP_HOST} ^(?:www\.)?old-domain\.com$ [NC]
RewriteRule ^([^-]+)-([^/]+)/?$ http://new-domain.com/forum/$2.$1 [L,NE,R=302]
仅供参考,这些规则适用于以下重定向: 1)
From: old-domain.com/forum/idF-forum-name
To: new-domain.com/forum/forum-name.idF
其中idF是变量号,“original-name”是变量短语
2)
From: old-doimain.com/forum/idF-forum-name/idT-thread-name
To: new-domain.com/forum/idF-forum-name/thread-name.idT
其中idP是随机数。
答案 0 :(得分:1)
您可以在底部尝试新规则:
RewriteEngine On
RewriteBase /forum/
RewriteCond %{HTTP_HOST} !^(?:www\.)?old-domain\.com$ [NC]
RewriteRule ^ - [L]
RewriteRule ^[\w-]+/\d+-[^/]+/?$ http://new-domain.com/forum/ [L,R=302]
RewriteRule ^([^/]+)/([^-]+)-([^/]+)/?$ http://new-domain.com/forum/$1/$3.$2 [L,R=302,NE]
RewriteRule ^([^-]+)-([^/]+)/?$ http://new-domain.com/forum/$2.$1 [L,NE,R=302]
RewriteRule ^ http://new-domain.com/forum/ [L]