HTTP访问域名自动跳转HTTPS致连接失败,非服务器跳转求因
问题解决思路
可能的原因及对应解决方案
1. 浏览器HSTS缓存残留
尽管你清除了常规缓存,但HSTS(HTTP严格传输安全)配置可能存储在浏览器的独立数据库中——如果该域名之前曾配置过HTTPS并发送过Strict-Transport-Security响应头,就会触发这种强制跳转。
- Chrome:地址栏输入
chrome://net-internals/#hsts,在「Delete domain security policies」栏输入你的域名mywebsite,点击删除。 - Firefox:地址栏输入
about:config,搜索network.stricttransportsecurity.preloadlist,临时设为false;或在「设置-隐私与安全」中找到「清除数据」,勾选「网站设置」后执行清除。 - 移动端浏览器:直接清除对应浏览器的网站设置数据,或重置浏览器至默认状态。
2. Google Domains的强制HTTPS设置
Google Domains默认可能开启了域名级别的HTTPS重定向,不受服务器配置影响。
- 登录Google Domains控制台,找到目标域名,进入「网站」或「重定向」设置面板,检查是否开启「强制HTTPS」类选项,将其关闭。
3. DNS中的HTTPS记录(SVCB/HTTPS RR)
若域名配置了HTTPS类型的DNS记录,浏览器会自动跳过HTTP请求,直接尝试HTTPS连接。
- 在Google Domains的DNS设置中,检查是否存在类型为
HTTPS的记录,如有则删除,仅保留指向公网IP的A/AAAA记录。
4. 浏览器自动HTTPS升级功能
现代浏览器默认开启自动HTTP转HTTPS的升级逻辑,可能覆盖自定义域名的访问请求。
- Chrome:打开
chrome://flags/#auto-upgrade-to-https,将选项设为「Disabled」后重启浏览器。 - Firefox:在
about:config中设置dom.security.https_first为false。
验证方法
修改设置后,执行命令curl -v http://mywebsite测试:
- 若curl无跳转行为,说明问题源于浏览器端配置;
- 若curl也出现跳转,则大概率是DNS或域名服务商的设置问题。
内容的提问来源于stack exchange,提问作者John Doe
相关产品推荐
相关产品推荐

