Chrome拦截站点跳转本地file协议离线文件的解除方法
Chrome 远程页面跳转本地file://文件的拦截解除方案
针对Chrome默认规则:从本地HTML页面发起file:///协议跳转可正常执行,但从远程http/https站点发起同类跳转时会被拦截,最终跳转至about:blank#blocked拦截页的行为,在不托管离线文件到远程服务器、不搭建本地服务的前提下,可通过以下配置放开限制:
Chrome 启动命令行参数配置
修改Chrome快捷方式的目标属性,在原有启动路径后追加以下参数,重启浏览器生效:
--allow-file-access-from-files:放开file协议的跨页面访问限制,旧版本Chrome可直接通过该参数放行跨场景的file跳转请求--disable-web-security:全局关闭Chrome同源安全策略拦截,直接移除远程站点到本地file路径的跳转拦截逻辑。注意:携带该参数启动的Chrome会在窗口顶部显示固定安全提示条,整个浏览器会话的跨域安全限制会被放宽,仅适合固定场景下的临时使用,不建议日常浏览网页时长期开启;如果启动时提示Chrome已在运行,可搭配--user-data-dir=参数指定独立的用户配置目录,避免和已有Chrome进程抢占资源- 新版本Chrome(100及以上)单独使用上述第一个参数可能无法完全放行拦截,需两个参数同时搭配使用才能达到效果
Chrome 内置Flags配置
在Chrome地址栏输入chrome://flags进入实验功能配置页,搜索对应功能项修改为启用状态:
- 搜索
Allow file access from files,将对应选项设置为Enabled,重启浏览器后生效 - 搜索
Block insecure private network requests,将对应选项设置为Disabled,降低本地网络资源的跨源拦截优先级
企业策略级永久配置
如果需要长期生效、不想每次手动修改快捷方式启动参数,可通过系统策略配置永久生效:
- Windows系统:导入对应Chrome组策略模板,将
AllowFileAccessFromFiles、DisableWebSecurity两个策略项设置为“已启用”,保存后重启Chrome即可全局生效 - macOS/Linux系统:通过命令行写入Chrome偏好配置项,将上述两个策略的对应值设置为允许状态即可
注意事项
- 所有配置修改仅对当前系统登录用户的Chrome实例生效,不会影响设备上其他用户的Chrome使用
- 上述配置不会修改本地file文件本身的访问权限,仅放开浏览器层面的跳转拦截逻辑
- 开启
--disable-web-security后,浏览器对恶意脚本的拦截能力会下降,使用过程中尽量避免访问不可信的第三方站点
内容的提问来源于stack exchange,提问作者John
相关产品推荐
相关产品推荐

