我们有一个.htaccess重写规则,它强制我们的所有页面都使用HTTPS。
我们需要阻止重定向一个页面。
以下内容可以使用,但不是阻止该页面重定向,而是将其重定向到站点的索引。
# Redirect all non-ssl to ssl.
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} !^\/newsletter\/
RewriteRule (.*) https://%{HTTP_HOST}/$1 [L,R]
我们已在此处检查了我们的预期结果:http://htaccess.madewithlove.be/
我们得到了正确的结果。该页面通过302重定向重定向到主页。这可能是什么问题?
答案 0 :(得分:1)
在.htaccess中尝试使用此规则作为非常第一的规则:
# Redirect all non-ssl to ssl.
RewriteCond %{HTTPS} off
RewriteCond %{THE_REQUEST} !/newsletter/
RewriteRule (.*) https://%{HTTP_HOST}/$1 [L,R]
使用THE_REQUEST
代替REQUEST_URI
,因为此规则之前/之后可能还有其他规则。