每当输入不包含在
Here is my之后的 url 时domain.nl
,我想重定向 fromdomain.nl/nl
nl
/
.htaccess
RewriteCond %{HTTP_HOST}%{REQUEST_URI} ^domain\.nl/(?!nl).*$ [NC]
RewriteRule ^(.*)$ http://domain.nl/nl [L,R=301]
不知何故,即使放入,它也总是匹配,domain.nl/nl
所以我最终陷入了无限循环的重定向。
为什么不直接反转完整条件并检查“不(匹配 domain.nl 并匹配 domain.nl/nl)”的情况,如下所示:
RewriteCond %{HTTP_HOST} ^domain\.nl [NC] # if the host matches domain.nl
RewriteCond %{HTTP_HOST}%{REQUEST_URI} !^domain\.nl/nl [NC] # but the full url is not matches domain.nl/nl
RewriteRule ^ http://domain.nl/nl [L,R=301] # redirect
RewriteCond %{HTTP_HOST}%{REQUEST_URI} ^domain\.nl/?(?!/?nl)$ [NC]
RewriteRule ^(.*)$ http://domain.nl/nl [L,R=301]