htaccess无限重定向循环

时间:2012-09-05 07:00:43

标签: php apache .htaccess https


我过去2个月一直面临着这个问题 我有一个htaccess文件,我把它放在顶级托管目录中 但是一旦我说出来,就会导致重定向无限循环 托管公司要求我检查是否启用了任何其他htaccess文件 但是我的整个托管目录中只有1个htaccess文件。

这是我的.htaccess的代码

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI}
</IfModule>

有人能猜出无限循环的原因吗?

2 个答案:

答案 0 :(得分:0)

尝试:

RewriteEngine on
#RewriteCond %{HTTPS} !=on
#RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

答案 1 :(得分:0)

你可以尝试这个:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/index\.
RewriteCond %{REQUEST_URI} !^/$
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI}
</IfModule>

与匹配的URI始终为非空的第二条规则不同,/不会再次匹配并继续循环。