Node.js 在节点中编写https应用程序,并在Azure应用程序服务上使用它
我已经编写了一个node.js应用程序,它一直托管在标准Linux服务器上。它工作正常,但我想把它移到Azure。我不知道如何更改以下行:Node.js 在节点中编写https应用程序,并在Azure应用程序服务上使用它,node.js,azure,https,azure-web-app-service,Node.js,Azure,Https,Azure Web App Service,我已经编写了一个node.js应用程序,它一直托管在标准Linux服务器上。它工作正常,但我想把它移到Azure。我不知道如何更改以下行: var options = { key: fs.readFileSync(process.env.CERT_KEY_PATH), cert: fs.readFileSync(process.env.CERT_PATH) }; if (process.env.CERT_BUNDLE) { options['ca'] = [ fs
var options = {
key: fs.readFileSync(process.env.CERT_KEY_PATH),
cert: fs.readFileSync(process.env.CERT_PATH)
};
if (process.env.CERT_BUNDLE) {
options['ca'] = [
fs.readFileSync(process.env.CERT_BUNDLE_ONE),
fs.readFileSync(process.env.CERT_BUNDLE_TWO),
fs.readFileSync(process.env.CERT_BUNDLE_THREE)
]
}
var server = https.createServer(options, app);
我读过一篇文章,它告诉我,我的证书不是从文件中读取的,而是上传到门户中的文件系统
然后在我的节点应用程序中,我是否只写var server=http.createServer(…)
?
让Azure负责https部分?@Sean
您可以按照belwo的文章部署node.js应用程序azure应用程序服务
请确保根据您的项目设置节点运行时
附言-链接在上面,我们正在使用Azure CLI部署应用程序。
希望有帮助。在云环境中部署API服务时,通常应该让平台负责SSL解密,而不是应用程序,并且不要使用自签名证书 您需要在NodeJs应用程序前面安装一个负载平衡器(or),以便通过SSL卸载来卸载https请求 参考: 我读过这本指南,它告诉我 从一个文件中读取我上传到 门户网站 然后,在我的节点应用程序中,我是否只编写var服务器= http.createServer(…)?Azure是否负责https部分
这是完全正确的。SSL终止是应用程序服务的一项功能。您的代码应该只驻留在端口80上。太好了,但是https呢?这是不正确的,应用程序服务执行自己的SSL终止。您不需要应用程序网关。