如果浏览器提示:
此连接已被阻止,因为它是公共页面发起的,旨在连接到您本地网络上的设备或服务器。
或者看到类似提示:
- This request has been blocked because it targets a local network resource.
- Private Network Access Check Failed.
- Failed to fetch local network resource.
这不是SSL证书失效,也不是HTTPS配置错误,而是 Chrome、Edge、Firefox 等现代浏览器实施的 Private Network Access(PNA,本地网络访问保护) 安全机制。
简单来说,就是HTTPS 网站不能直接访问本地网络中的 HTTP 服务,浏览器会主动阻止此类请求,以防止恶意网站扫描用户局域网设备或攻击内网系统。
为什么会出现这个错误?
当一个 HTTPS 网站通过 JavaScript(例如 fetch、XMLHttpRequest 或 WebSocket)访问下面这些地址时:
http://192.168.x.x
http://10.x.x.x
http://172.16.x.x
http://localhost
http://127.0.0.1
浏览器会认为目标属于本地网络(Private Network)。v z
为了保护用户设备安全,浏览器默认禁止 HTTPS 页面向这些 HTTP 地址发起请求,因此会直接提示:
此连接已被阻止,因为它是公共页面发起的。
因此,这属于浏览器安全策略,并不是 SSL 证书安装失败。
这和SSL证书有关系吗?
大多数情况下没有直接关系。
很多用户认为:
我已经部署了 HTTPS,也安装了 SSL 证书,为什么还会报错?
实际上,两者并不是同一个问题。
SSL 证书的作用是建立 HTTPS 加密连接,验证服务器身份,并保护客户端与服务器之间的数据传输安全。
而浏览器的 Private Network Access(PNA)策略,则是限制网页访问本地网络资源,即使网站已经部署了 HTTPS,也不会自动获得访问局域网设备的权限。
因此,即使网站部署的是:
- 免费 DV SSL 证书
- 企业 OV SSL 证书
- EV SSL 证书
只要网页尝试访问:
http://192.168.1.1
浏览器仍然会直接阻止。
为什么浏览器要这样设计?
近年来,越来越多的网站开始调用用户本地设备,例如:
- NAS
- 打印机
- 摄像头
- 路由器
- PLC
- 工业控制设备
- IoT 智能终端
如果浏览器允许任何 HTTPS 网站访问这些设备,攻击者就可能:
- 扫描局域网设备
- 获取路由器信息
- 利用设备漏洞发起攻击
- 窃取内网数据
因此,Chrome、Edge 等浏览器开始逐步实施 Private Network Access 安全策略,对本地网络访问增加额外限制。
如何解决这个问题?
不同场景的解决方案并不相同。
方案一:为本地服务启用 HTTPS(推荐)
这是最推荐、也是最符合长期运维要求的方案。
如果局域网中的应用支持 HTTPS,建议直接部署 SSL 证书,例如:
https://panel.company.local
https://device.example.com
再通过 DNS、内网域名或反向代理进行访问。
对于企业环境,可以根据实际情况选择:
- 免费 DV SSL 证书
- 企业 OV SSL 证书
- 通配符 SSL 证书(适合大量子域名)
- 多域名 SSL 证书(适合多个业务系统)
这样既符合浏览器安全策略,也便于统一管理 HTTPS 服务。
方案二:开发环境临时关闭限制
如果只是本地开发或接口调试,可以使用浏览器启动参数临时关闭限制,例如 Chrome:
--unsafely-treat-insecure-origin-as-secure="http://192.168.1.100:8080"
注意:
此方法仅适用于开发测试,不建议用于生产环境,更不能要求最终用户这样操作。
方案三:通过反向代理访问本地服务
很多企业系统都会采用这种方式。
例如:
https://app.example.com/api/device
实际上由:
Nginx
Apache
IIS
反向代理到:
http://192.168.1.100
浏览器始终访问 HTTPS 地址,而服务器再与内网设备通信,这也是目前较为成熟的架构方案。
为什么使用 Let's Encrypt 仍然会报错?
很多用户发现:
已经部署 Let's Encrypt 免费 SSL 证书,为什么还是出现该提示?
原因是:
Let's Encrypt 只能为公开域名签发 SSL 证书,不能为:
- 192.168.x.x
- 10.x.x.x
- localhost
等私有地址签发证书。
因此,即使网站已经启用了 HTTPS,只要访问目标仍然是局域网 HTTP 地址,浏览器依然会阻止访问。
如何避免此类问题?
建议从以下几个方面进行优化:
- 为网站全面启用 HTTPS。
- 局域网服务尽量启用 HTTPS,并使用浏览器信任的 SSL 证书。
- 升级服务器配置,启用 TLS 1.2 或 TLS 1.3。
- 使用 Nginx、Apache 或 IIS 统一代理内网接口。
- 避免在 HTTPS 页面直接请求
http://192.168.x.x、http://localhost等地址。
对于需要长期维护的企业系统,建议统一规划 HTTPS 架构,并定期检查 SSL 证书有效期、证书链完整性以及 TLS 配置,避免因配置问题影响业务访问。
常见问题(FAQ)
此连接已被阻止是SSL证书过期吗?
不是。该错误通常与浏览器的本地网络访问保护策略有关,并不表示 SSL 证书已经过期。
更换SSL证书可以解决吗?
通常不能。
只有当目标服务也部署 HTTPS,并且浏览器能够建立可信连接时,才可能恢复正常访问。
修改 CORS 响应头可以解决吗?
不能。
Access-Control-Allow-Origin 仅影响跨域资源共享,对浏览器的 Private Network Access 安全策略没有作用。
微信内置浏览器也会出现这个错误吗?
可能会。
微信内置浏览器基于 Chromium 内核(不同版本实现可能略有差异),在支持 Private Network Access 的版本中,同样会遵循浏览器的安全策略。
相关阅读
如果您遇到的是 HTTPS 或 SSL 配置问题,还可以继续了解以下内容:



京公网安备11010502031690号
网站经营企业工商营业执照
















