Chromium不允许网站访问用户的摄像头,除非该页面托管在"安全上下文"中。通常这意味着具有有效TLS(HTTP(证书的Web服务器,但localhost
也有例外。
我正在开发一个需要在 LAN 内流式传输视频的应用程序,我也想将网络服务器托管在 LAN 中,但我不清楚如何设置它以使服务器被视为"安全上下文"。有没有一种合理的方法可以将TLS证书与零/bonjour主机名一起使用?或者其他一些方法将整个 LAN 标记为受信任?
您可以为此使用"被视为安全的不安全源"标志:
chrome://flags/#unsafely-treat-insecure-origin-as-secure
它允许您将某些域标记为安全,即使连接不是https。确保启用该标志,并添加您的域,例如 http://example.com
,到文本字段。
您可以使用私有证书颁发机构 (CA( 或使用已知 CA 将 TLS 配置为 LAN 上的服务器。
私有 CA
- 使用 OpenSSL 或其他 CA 软件设置私有 CA。
- 将此 CA 的根证书添加到 LAN 上所有设备上所有 Web 浏览器中的受信任证书存储中。
- 从此 CA 为 LAN 上的计算机颁发证书。
- 将 LAN 上的计算机配置为使用这些证书。
知名加州
- 为 LAN 上的计算机购买域名,并设置定期续订付款。
- 在与您的域捆绑在一起的 DNS 托管的区域文件中为 LAN 上的计算机分配名称。
- 使用 dns-01 质询从 Let's Encrypt 获取 LAN 上计算机的证书。
- 将 LAN 上的计算机配置为使用这些证书。