.htaccess 重定向 301 循环

.htaccess 重定向 301 循环

我在 Apache 服务器上通过 .htaccess 文件实现 301 重定向时遇到问题。

我可以在 .htaccess 文件中启用“重定向 301”语句,它们似乎可以工作几分钟,但不久之后服务器就开始返回“太多自动重定向”错误并且该网站变得不可用。

显然,代码中某处有一个循环,但我看不到它。有人能指出来吗?

另外,我应该使用“RedirectMatch”而不是“Redirect”吗?

以下是 .htaccess 文件的内容:

ErrorDocument 404 http://www.example.com/404.html
RewriteEngine On
RewriteRule (wooden_house|straw_house|brick_house_(One|Two|Three)Piggy)\.html$ /$1.php  

# //Rewrite to www
Options +FollowSymLinks
RewriteEngine on

RewriteCond %{HTTP_HOST} ^example.com [nc]
RewriteRule ^(.*)$ http://www.example.com/$1 [r=301,nc]

RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule .* - [L]

# //301 Redirect Old File
Redirect 301 /index.php http://www.example.com
Redirect 301 /index.shtml http://www.example.com
Redirect 301 /index.pl http://www.example.com
Redirect 301 /default.htm http://www.example.com

相关内容