我有像这样的重定向:
Redirect 301 /url-1 /url-2
但是,/url-2
匹配如下的重写:
RewriteRule ^([^.]+)$ index.php?view=$1 [QSA,L]
这会将/url-1
重定向到:
/url-2?view=url-1
如何让它重定向然后正确重写?
答案 0 :(得分:0)
很少有建议:
Redirect
指令与mod_rewrite
规则您可以使用以下规则:
RewriteEngine On
RewriteRule ^url-1/? /url-2 [L,NC,R=301]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule [^/]$ %{REQUEST_URI}/ [L,R=301,NE]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^.]+?)/?$ index.php?view=$1 [QSA,L]
请在测试前清除浏览器缓存。