首页 > 代码库 > apache rewrite 出现死循环

apache rewrite 出现死循环

方法一:

我的一条规则

1、RewriteRule ^(.*) /111/$1 [R,L]


使用curl测试,没有问题,但是使用浏览器访问时,出现了无限循环。
本来访问的是 www.111.com 结果变成了  www.111.com/111/111/111/..... 
虽然在最后加了 [L] 依然不管用,可能apache还是不够智能,一直满足条件就一直去匹配,一直去跳转。最后没招了只能再加一个条件。


1、RewriteCond   %{REQUEST_URI} !^/111

2、RewriteRule ^(.*) /111/$1 [R,L]


这样就不再循环了。


方法二:

1、RewriteCond   $1 !^/111

2、RewriteRule ^(.*) /111/$1 [R,L]


对于 !^所匹配的对象,我们还可以写成多个一起的形式

1、RewriteCond   %{REQUEST_URI}  !^(/111|/222|/333|index.php)


本文出自 “小杨” 博客,请务必保留此出处http://aqiang.blog.51cto.com/6086626/1895872

apache rewrite 出现死循环