如何在没有可信SSL证书的Intranet中运行PWA?

如何在没有可信SSL证书的Intranet中运行PWA?,ssl,progressive-web-apps,Ssl,Progressive Web Apps,我正在建立一个内部网环境,以便将来为商业目的运行PWA。但是我遇到了一个关于SSL证书的问题 在我的计划中: 所有东西都在本地网络上(可能没有互联网接入),其中有一个专用服务器(我使用的是ubuntu服务器) 用户使用计算机或电话访问主页面,在主页面中,他在设备上安装了PWA PWA需要HTTPS才能工作,我可以对证书进行自签名(我这样做是为了测试),但这不是实现应用程序的解决方案,因为使用这种方法,它会在地球上的每个浏览器上产生安全错误 将证书导入浏览器对我来说不是一个解决方案,因为在每个

我正在建立一个内部网环境,以便将来为商业目的运行PWA。但是我遇到了一个关于SSL证书的问题

在我的计划中:

  • 所有东西都在本地网络上(可能没有互联网接入),其中有一个专用服务器(我使用的是ubuntu服务器)
  • 用户使用计算机或电话访问主页面,在主页面中,他在设备上安装了PWA
PWA需要HTTPS才能工作,我可以对证书进行自签名(我这样做是为了测试),但这不是实现应用程序的解决方案,因为使用这种方法,它会在地球上的每个浏览器上产生安全错误

将证书导入浏览器对我来说不是一个解决方案,因为在每个用户浏览器上导入证书都很麻烦(这对用户不友好),而且在没有root的android中也不可能

我想创建一个PWA,它需要最少的高级用户帮助才能工作,所以导入证书和进行变通是不行的


运行PWA时不存在此证书问题是可能的,或者我现在应该放弃它并开始一个标准的web应用程序?

HTTPS是运行PWA的核心要求。
证书不再那么昂贵。
只需将其计入您的年度托管成本。

在您使用证书运行HTTPS之前,也许您可以使用类似于免费测试的东西,PWA需要托管在安全服务器上,但它可以与非安全服务通信。一种可能的解决方法是:

  • 将PWA托管在一个安全的站点上,成本应该不会太高(例如AWS)
  • 安全站点基本上只用于托管应用程序和更新
  • 在PWA内与局域网上的非安全服务通信

存在。使用它。停止对证书进行自签名,并期望人们只需点击即可忽略重要的安全警告,这会养成超级坏习惯。期望人们安装一些粗略的自签名证书也不是一个解决方案。Let's Encrypt确实需要连接,但是如果DNS名称匹配,您可以在一个位置生成证书并将其部署到防火墙后面的另一个受保护的位置。这不起作用,因为服务器没有公共域名,我正在同一网络上的服务器上运行它。我目前仅通过IP访问。您可以设置本地DNS使其正常工作。通过IP访问在这里是个问题,你需要一个名字。你找到解决方案@Viníciuspereira了吗?我有完全相同的情况,需要在员工移动设备上运行pwa,服务器托管在lan上。客户端不希望工作人员使用应用程序(如果不在工作场所)。我自己将应用程序托管在与我位于同一网络上的服务器上,因此我不是公共域名,我当前仅通过IP访问。好的。如果需要,您仍然可以免费使用Glitch在HTTPS上测试您的PWA代码。