使用Apache <IF>指令强制执行HTTPS

时间:2019-07-15 15:09:49

标签: apache .htaccess hsts

如何使用Apache <IF>指令对整个网站进行HTTP到HTTPS重定向?

https://httpd.apache.org/docs/2.4/en/rewrite/remapping.html,他们说:

  

要将网站的一部分重定向到HTTPS,您可以执行   以下:

<If "%{SERVER_PROTOCOL} != 'HTTPS'">
  Redirect "/admin/" "https://www.example.com/admin/"
</If>

我尝试了这种看起来不错的解决方案:

<If "%{SERVER_PROTOCOL} != 'HTTPS'">
  Redirect "http://mysupersite.com/" "https://mysupersite.com/"
</If>

很遗憾,这会在https://hstspreload.org/的HSTS测试中触发一个错误

错误:无法从HTTP重定向 http://mysupersite.com不会重定向到https://mysupersite.com

奇怪!因为重定向有效地发生了。

0 个答案:

没有答案