You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何浏览器自动将HTTP请求转为HTTPS?Express部署问题求助

解决Chrome自动将HTTP资源转为HTTPS的问题

以下是几个直接可行的解决方案:

1. 使用相对路径引用资源

把硬编码的HTTP地址改成相对路径,让资源请求自动跟随页面的协议:

<script type="module" src="/buildjs.js"></script>
<link rel="stylesheet" href="/buildcss.css">

这样不管页面是HTTP还是HTTPS访问,资源都会用相同的协议请求,从根源避免协议不匹配的问题。

2. 清除Chrome的HSTS缓存

如果该EC2实例IP曾被浏览器标记为强制使用HTTPS(比如之前配置过HTTPS后又切换回HTTP),Chrome会自动触发跳转。可以手动清除缓存:

  • 在Chrome地址栏输入 chrome://net-internals/#hsts
  • 找到「Delete domain security policies」区域,输入你的实例IP 51.20.7.73,点击「Delete」
  • 重启浏览器后重新访问页面

3. 关闭Chrome的自动HTTPS升级功能

这是本地临时解决办法:

  • 打开Chrome设置,搜索「HTTPS」
  • 找到「自动将不安全的网站升级为HTTPS」选项,关闭它

4. 检查Express应用的响应头

如果你的Express应用配置了Strict-Transport-Security(HSTS)头,会强制浏览器使用HTTPS。检查代码中是否有类似以下的设置,如果有,暂时注释掉:

// 若存在此行则注释掉
// res.setHeader('Strict-Transport-Security', 'max-age=31536000');

内容的提问来源于stack exchange,提问作者Shlok Jain

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 11:14:53