以下代码:
var out = '';
var file = __dirname + '/../public/images/_DSC5813.jpg';
execFile('openssl', ['sha1', file], function (err, sdtout, sdterr) {
if (err) {
out = err.message; // the error message is 'spawn openssl ENOENT'
console.log(err);
}
else {
out = sdtout.toString();
console.log(sdtout);
console.log(out);
}
res.render('index', { title: 'Express', message: out });
});
任何人都有同样的问题似乎是天蓝色的服务器没有正确安装openssl?!
答案 0 :(得分:1)
是的,Azure Web App默认环境不安装openssl应用程序。您可以转到https://<your_web_app_name>.scm.azurewebsites.net/Env.cshtml
查看所有已安装的应用程序/环境和路径变量。
如果需要在项目中执行openssl应用程序,可以将可执行应用程序openssl.exe
放入包中,然后再一起部署到Azure。当您需要在项目中执行时,可以利用应用程序目录路径中的相对路径。