我想托管自己的https服务器,但是生成的证书无效,并且当从浏览器访问时,它表示连接不安全。
laiyong369 回答:如何使用HTTPS库在Node.js中使用有效证书托管HTTPS服务器
您可以在NodeJS代码库中实现它,也可以使用http proxy
或Nginx
与Apache
一起使用
const crypto = require('crypto'),fs = require("fs"),http = require("http");
var privateKey = fs.readFileSync('privatekey.pem').toString();
var certificate = fs.readFileSync('certificate.pem').toString();
var credentials = crypto.createCredentials({key: privateKey,cert: certificate});
var handler = function (req,res) {
res.writeHead(200,{'Content-Type': 'text/plain'});
res.end('Hello World\n');
};
var server = http.createServer();
server.setSecure(credentials);
server.addListener("request",handler);
server.listen(8000);
建议使用Nginx方法
在Vhost中添加SSL文件
如果要使用免费的SSL,请尝试certbot,它将自动在vhost中安装SSL