在主页上强制HTTPS,但强制所有其他人使用HTTP

时间:2016-12-15 22:38:28

标签: .htaccess mod-rewrite

我正在尝试在我的主页上强制使用HTTPS,但是通过.htaccess强制所有其他人使用HTTP。我试图遵循许多其他解决方案,没有运气。

我的主页格式应为:https://example.com

其他页面应为:http://example.com/pagehttp://example.com/page?var=asd

我的尝试:

sed

有了这两个规则,页面就不会加载,我会收到重定向错误。随着其中一条规则被注释掉,页面会加载,但是并没有按照我的意愿行事。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

这样做:

RewriteEngine On     

# Enable HTTPS for homepage
RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{HTTPS} off
RewriteRule ^$ https://example.com/ [R=301,L]

# Disable HTTPS for all pages
RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{HTTPS} on
RewriteRule . http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE]

确保在测试前清除浏览器缓存。