使用htaccess Https到http内部目录重定向

时间:2016-04-18 05:04:08

标签: apache .htaccess redirect

我正在尝试将https://www.example.com/innerdirectory/重定向到http://www.example.com/innerdirectory/。我在.htaccess文件中尝试了以下代码。但它仍然加载https。

我在http://www.example.com/innerdirectory/及其主页中有 .htaccess 文件。

RewriteCond %{HTTPS} on
RewriteRule ^/?$ http://%{SERVER_NAME}/ [R=301]
RewriteRule ^innerdirectory/?$ http://%{SERVER_NAME}/innerdirectory/ [R=301,L]

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

您的第二个重写规则是无条件地将http://example.com/innerdirectory重定向回http://example.com/innerdirectory,从而导致重定向循环错误。您需要为规则设置条件,以便它仅将https重新调整为http。试试:

RewriteEngine on

#if https==on
RewriteCond %{HTTPS} on
#Redirect "http://example/innerdir" to "https://example/innerdir"
RewriteRule ^innerdirectory/?$ http://%{HTTP_HOST}%{REQUEST_URI} [NC,L,R]