Tôi có các quy tắc viết lại htaccess sau đây. Tình trạng một quy tắc để ngăn chặn vòng lặp ban đầu được viết theo cách này:Apache mod_rewrite REDIRECT_STATUS điều kiện gây ra danh sách thư mục
RewriteCond %{ENV:REDIRECT_STATUS} ^.
Nó dùng để chỉ làm việc tốt, cho đến khi nó đột nhiên ngừng làm việc gây Apache để hiển thị danh sách thư mục của trang web.
tôi đã phải thay đổi nó để hình thức mới này, như trong danh sách dưới đây, để có nó hoạt động trở lại:
RewriteCond %{ENV:REDIRECT_STATUS} 200
Bạn có bất cứ ý tưởng về lý do của hành vi này?
Cảm ơn bạn
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]
Bạn đã bao giờ nhận được câu trả lời cho điều này chưa? – anubhava
thực sự không: (không xấu miễn là nó hoạt động tốt, vẫn còn tôi đã có thể thích hiểu lý do :) – Timido