【问题标题】:Forcing HTTPS version without redirect in case of direct visit在直接访问的情况下强制使用 HTTPS 版本而不重定向
【发布时间】:2019-03-18 13:19:42
【问题描述】:

我知道如果有人在 URL 的 HTTP 版本上发送请求,我可以编写重定向到 HTTPS 版本的重定向规则。但是,如果用户只想使用域名直接访问我的网站:example.com,如何实现这一点,他会得到https:// 版本而无需重定向?我也知道 HSTS,但我很确定这只能通过良好的 .htaccess 设置来完成?

【问题讨论】:

    标签: html .htaccess https


    【解决方案1】:

    你不能。

    如果您在浏览器中键入 URL 时未明确说明方案,则 浏览器 将默认为纯 HTTP。

    改变这种情况的唯一方法是重写用户已安装的浏览器(或者让他们安装浏览器插件)。


    .htaccess 是用于配置 Apache HTTPD 的recommended against 机制。您使用的 HTTP 服务器不能影响浏览器请求的 URL(除了通过接收请求并通过重定向响应)。

    【讨论】:

    • 一种方法可能是进入浏览器的硬编码 HSTS 列表,但这是一个不切实际的远景……
    • 这很奇怪,因为例如当我在浏览器中输入 marketingminer.com 时,我得到了没有重定向的 HTTPS 并且没有设置 HSTS
    • @TomášNosek — 我无法重现 — i.imgur.com/fCQmFMS.png — 也许您的浏览器缓存了 301 one 响应。
    • 我也使用匿名浏览器测试过@Quentin 我仍然得到 HTTPS
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-20
    相关资源
    最近更新 更多