我正在使用https包在https中运行程序。我有适当的ssl证书,私钥和捆绑文件。我的代码中包含的所有这些文件。这个https程序也可以正常运行。但是,当我将前端连接到节点js时,它没有连接。错误为“ 504网关超时”。我在哪里出错?我将代码托管在Azure中。
const https = require('https');
//path for private key and certificate
let privateKey = fs.readFileSync('sslcert/server.key','utf8');
let certificate = fs.readFileSync('sslcert/server.crt','utf8');
var credential = {
key: privateKey,
cert: certificate,
};
var server = https.createServer(credential, app)
server.listen('8443',function() {
console.log('Listening on https://localhost:' + 8443);
});
答案 0 :(得分:0)
请参阅此https://nodejs.org/api/net.html#net_server_listen_port_host_backlog_callback
因此,如果您没有为host
声明server.listen()
,则默认主机应为0.0.0.0
。
答案 1 :(得分:0)
如果需要监听特定的地址,则必须在端口后定义它。
http.createServer(function (req, res) {
}).listen(8443, "0.0.0.0");
您的前端服务器必须与您的API位于同一网络子网上。