你好,目前我正在使用我的本地webserver-express制作渐进式网页应用程序。经过这么多天没有进展,我完全处于困惑之中。
因为我需要在手机中使用PWA,所以我真的需要为服务工作者启用https。
我尝试过使用自签名cerf,它对服务工作者不起作用,并且有一种方法可以启用http with service-worker但它只能在PC-chrome中访问,而我真的需要服务工作者在我的工作Android或智能手机不在我的PC中。
所以我刚买了真正的cerf来获得 HTTPS ,我有点困惑,因为我还不熟悉域名等。
我跟着this guide刚买了我的ssl和一个新域名,因为我在我的本地网络服务器上运行了我的PWA。
但是我的域名仍然是新的,所以它仍然被锁定60天,我不知道我是否会在另一个网站上购买它将被锁定或者不会再次购买新的ssl。
我有4个cerf:
我的域名cerf
Root cerf
中级cerf
Webserver cerf
所以我尝试在我的本地ip +端口运行我的webserver express这4个cerfs所以这里的问题因为我知之甚少:
我不知道如何处理webserver-cerf,我在代码中应用了它,它也什么也没做。
options = {
key: fs.readFileSync(path.join(certsPath, 'my-server.key.pem'))
, ca: [
fs.readFileSync(path.join(caCertsPath, 'webserver.crt.pem'))
,fs.readFileSync(path.join(caCertsPath, 'intermediate.crt.pem'))
,fs.readFileSync(path.join(caCertsPath, 'my-root-
ca.crt.pem'))
]
, cert: fs.readFileSync(path.join(certsPath, 'my-server.crt.pem'))
, requestCert: false
, rejectUnauthorized: true
};
稍后:
https.createServer(options, app);
我认为你们知道这是如何运作的吗? nodejs.express
我真的不认为网络服务器的代码是问题,但更像是认证,域名世界以及本地网络服务器如何与https一起使用。 我研究的越多,我现在就越困惑。
我运行https://ip:port没有使用我的https-cerf。
基本上我只需要在我的本地网络服务器中制作绿色HTTPS ,但是如何?我买了这个cerf并没有用,所以在我买另一个之前我必须确定我现在遇到了什么样的问题?
另一个问题:我的域名已解锁,但有名称服务器,而我没有主机提供商,我可以使用我的local-ip到名称服务器吗?我真的很困惑这个东西现在如何运作。我甚至不知道我现在困惑的是什么,不知道该问什么。
抱歉语法不好,但我想如果你们纠正我的话。编辑:错误解锁并锁定
答案 0 :(得分:0)
服务工作人员通常需要https:
,但localhost
是例外。任何http://localhost:<port>
来源都将与服务人员合作。
由于您提到需要在手机上测试内容,并假设它是Android设备并且您使用的是Chrome,“Access Local Servers”指南中的信息可以为您提供帮助。
您可以运行本地网络服务器,然后使用Chrome将端口转发到通过USB线连接的Android设备,Android设备可以加载您的内容并通过相同的{{1}充分利用服务工作者} origin。