У меня есть следующие правила перезаписи htaccess. Условие одного правила для предотвращения цикла было изначально написано следующим образом:
RewriteCond %{ENV:REDIRECT_STATUS} ^.
Он работал очень хорошо, пока он не прекратил работу, в результате чего Apache отобразил список каталогов на веб-сайте.
Мне пришлось изменить его на эту новую форму, как в приведенном ниже списке, чтобы она снова работала:
RewriteCond %{ENV:REDIRECT_STATUS} 200
Есть ли у вас какое-либо представление о причине такого поведения?
Спасибо
RewriteEngine on
RewriteBase /
## Permanent 301
## Force to www. Un-comment in production.
RewriteCond %{HTTP_HOST} !^www\.myhost\.com [NC]
RewriteRule ^(.*) http://www.myhost.com/$1 [L,R=301]
## Permanent redirect rules for contents
RewriteRule ^argument/programming/?$ tags/programming [NC,L,R=301]
## Internal Redirect Loop Protection
RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule ^ - [L]
## Maintenance page
#RewriteRule (.*) special/maintenance.html
## Specials
RewriteRule special/(.*) special/$1 [NC,L]
## Static resources
RewriteRule ^(.*\.(js|ico|gif|jpg|png|css|rss|xml|htm|html|pdf|zip|gz|txt))$ public/$1 [NC,L]
## Front Controller
RewriteRule ^(.*) public/index.php [NC,L]