为何ngrok生成的HTTP链接被重定向至HTTPS?如何禁用?
ngrok HTTP链接被浏览器强制重定向至HTTPS的问题解决
是否属于预期行为?
是预期行为。现代主流浏览器(Chrome、Firefox等)默认会对包括ngrok官方域名在内的常见公网域名启用**HTTP严格传输安全(HSTS)**机制,即便你通过ngrok http 80 --scheme http指定仅使用HTTP协议,浏览器也会自动拦截HTTP请求并强制重定向到HTTPS,最终触发ERR_NGROK_3200错误(因为你的服务器未配置SSL,ngrok的HTTPS端口无法正常转发)。
强制禁用重定向的方法
1. 临时清除浏览器的HSTS缓存(单次有效)
- Chrome/Edge:打开
chrome://net-internals/#hsts,在「删除域名安全策略」输入框中填入你的ngrok公网域名(例如abc123.ngrok.io),点击「删除」。 - Firefox:打开
about:config,搜索network.stricttransportsecurity.preloadlist,将其值改为false;测试完成后建议改回true,避免降低浏览器安全性。
2. 使用ngrok付费版的自定义域名并禁用HSTS
如果你是ngrok付费用户,可以指定自定义子域名并禁用HSTS,从根源避免浏览器强制跳转:
ngrok http 80 --scheme http --domain your-custom-domain.ngrok.io --no-hsts
3. 以禁用HSTS的参数启动浏览器(不推荐全局使用)
- Chrome:关闭所有Chrome进程后,执行命令启动:
google-chrome --disable-strict-transport-security
- Firefox:修改快捷方式属性,在目标栏末尾添加
-disable-strict-transport-security(注意前面加空格),启动后浏览器会暂时禁用HSTS。
4. 使用非浏览器工具测试
如果只是验证服务器接口可用性,直接用curl、wget或Postman等工具,它们不会自动触发HTTPS强制跳转:
curl http://your-ngrok-url.ngrok.io
内容的提问来源于stack exchange,提问作者0xC0DEGURU
相关产品推荐
相关产品推荐

