Apache 一个文件夹规则的HTTPS重定向循环
我正在尝试使用我放在Apache 一个文件夹规则的HTTPS重定向循环,apache,.htaccess,redirect,Apache,.htaccess,Redirect,我正在尝试使用我放在yourfolder中的apache2.htaccess文件重定向一个文件夹中的流量。然而,每当我访问那个文件夹或子文件夹时,我都会得到一个“这个网页有一个重定向循环”。知道为什么这不是飞行吗 RewriteEngine On RewriteCond %{SERVER_PORT} 80 RewriteCond %{REQUEST_URI} yourfolder RewriteRule ^(.*)$ https://www.yourdomain.com/yourfolder
yourfolder
中的apache2.htaccess文件重定向一个文件夹中的流量。然而,每当我访问那个文件夹或子文件夹时,我都会得到一个“这个网页有一个重定向循环”。知道为什么这不是飞行吗
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} yourfolder
RewriteRule ^(.*)$ https://www.yourdomain.com/yourfolder/$1 [R,L]
编辑:让我澄清一下,我正在尝试重定向
http://www.yourdomain.com/yourfolder
至https://www.yourdomain.com/yourfolder
您的重写规则与每个页面都匹配,包括您试图将用户重定向到的页面。我找到了它。我添加了一个检查SSL是否关闭的条件,该条件有效:
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-SSL} off
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} yourfolder
RewriteRule ^(.*)$ https://www.yourdomain.com/yourfolder/$1 [R,L]
为什么你认为这不应该是一个循环?您从
yourfolder
重定向到yourfolder
。因为传入流量在80上,所以重定向到443。两个不同的要求。事实上,这是正确的。所以,正如你自己的回答进一步说明的,这一定是一个循环,有非常特殊的情况。有,一个反向代理。很好的一点,我想我不掌握这些重写规则。我正在尝试重定向http://www.yourdomain.com/yourfolder
至https://www.yourdomain.com/yourfolder
。尝试添加异常,例如:如果不只是“yourfolder”,则重定向到