如何让HTTP托管的Web应用打开自定义协议时无需每次弹窗确认
Chrome HTTP站点调用自定义协议跳过弹出提示的可行方案
Chrome默认要求自定义协议的静默调用权限只能授予属于安全上下文的站点,HTTPS是默认的安全上下文,HTTP站点默认不属于,所以不会显示「始终允许」复选框,每次调用都会弹出提示,以下是可落地的客户端侧解决方案:
方案1:修改Chrome安全上下文例外(单用户最常用)
操作步骤:
- 在Chrome地址栏输入
chrome://flags/#unsafely-treat-insecure-origin-as-secure进入flag配置页 - 找到【Insecure origins treated as secure】选项,将下拉框值改为 Enabled
- 在下方的输入框中填入你需要信任的HTTP站点完整地址,示例:
http://192.168.1.100:8080,多个站点用英文逗号分隔 - 点击页面底部的「Relaunch」按钮重启浏览器生效
配置完成后,该HTTP站点会被Chrome识别为安全上下文,调用自定义协议时就会出现允许记住选择的复选框,勾选一次后后续调用就不会再弹出提示。
方案2:企业组策略批量配置(适合企业内网批量部署场景)
Windows、macOS、Linux环境都可以通过Chrome官方的组策略模板配置规则,不需要用户手动操作:
- 下载安装对应系统的Chrome行政模板(ADMX)
- 找到策略项【配置允许特定站点打开的外部协议列表】
- 按规则填入站点地址和对应的自定义协议标识,配置完成后策略生效的设备上,指定站点调用对应协议时不会弹出任何提示。
方案3:命令行启动参数(临时使用场景)
如果只是临时测试使用,不需要永久修改配置,可以在启动Chrome时加上启动参数:chrome.exe --unsafely-treat-insecure-origin-as-secure=http://your-test-site.com
该参数仅对本次启动的Chrome进程生效,关闭浏览器后配置就会失效。
注意事项
- 以上操作仅建议针对可信的内网HTTP站点使用,不要将不可信的公网HTTP站点加入信任列表,避免出现安全风险
- 部分企业管理的Chrome浏览器可能禁用了flags修改功能,这种情况只能联系管理员通过组策略配置规则
内容的提问来源于stack exchange,提问作者jordan28
相关产品推荐
相关产品推荐

