.htaccess 重写第二条规则让我发疯

.htaccess 重写第二条规则让我发疯,.htaccess,.htaccess,我有一个.htaccess文件,其中包含以下条件规则: RewriteEngine on RewriteBase / RewriteCond %{REQUEST_URI} !^/(somedir/|$)(/.*)? [NC] RewriteRule ^(.*)$ http://other.domain.com/$0 [L,QSA] 我需要将所有请求从第一个站点重定向到另一个站点,请求uri开头不包含“somedir”,如果请求uri为空或/ 对不起,我的英语有任何帮助 用以下代码替换您

我有一个.htaccess文件,其中包含以下条件规则:

RewriteEngine on
RewriteBase     /
RewriteCond %{REQUEST_URI} !^/(somedir/|$)(/.*)? [NC]
RewriteRule ^(.*)$ http://other.domain.com/$0 [L,QSA]
我需要将所有请求从第一个站点重定向到另一个站点,请求uri开头不包含“somedir”,如果请求uri为空或/


对不起,我的英语有任何帮助

用以下代码替换您的代码:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} !^/(somedir(/.*|)|)$ [NC]
RewriteRule ^(.*)$ http://other.domain.com/$1 [L,R=302]

确认其工作正常后,将
R=302
更换为
R=301
。避免使用
R=301
(永久重定向)在测试你的mod_重写规则时。

first-lego.detishop.ru second-online.detishop.rui这不是你所期望的,因为你想要这种行为
如果我的请求uri为空或/
现在你的URL:
lego.detishop.ru second
请求uri
将是
//code>并跳过规则,因为重写秒