我正在使用git将node.js应用程序部署到Azure App Service。 它返回
服务不可用
在应用页面上。在控制台中显示
无法加载资源:服务器响应状态为503 (服务暂时不可用)
在部署期间,我收到一条警告:
npm WARN lifecycle The node binary used for scripts is /usr/bin/node but npm is using /opt/nodejs/8.1.0/bin/node itself. Use the `--scripts-prepend-node-path` option to include the path for the node binary npm was executed with.
我在package.json中的脚本中包含了选项,但它没有解决它,也许这是错误的地方?
"start": "node server/server.js --scripts-prepend-node-path"
我已经用Google搜索了答案,但无法解决。
在环境变量中将 WEBSITE_NODE_DEFAULT_VERSION 设置为8.1.0没有帮助。我在package.json中指定了这个节点版本。
我无法按照第二个提示建议执行自定义部署脚本。
我在项目文件夹中本地运行npm config set scripts-prepend-node-path true
,然后推送但是没有解决它。
其他一些答案表明应用可能需要扩展,但是这个应用程序可以通过Heroku免费计划很好地处理,在Azure上我有一个学生计划。
我包含了我得到的日志的一部分:
Detecting node version spec...
Using package.json engines.node value: 8.1.0
Node.js versions available on the platform are: 4.4.7, 4.5.0, 6.2.2, 6.6.0, 6.9.3, 6.10.3, 6.11.0, 8.0.0, 8.1.0.
Resolved to version 8.1.0
Detecting npm version spec...
Using default for node 8.1.0: 5.0.3
NPM versions available on the platform are: 2.15.8, 2.15.9, 3.9.5, 3.10.3, 3.10.10, 5.0.3.
Resolved to version 5.0.3
Running "/opt/nodejs/8.1.0/bin/node" "/opt/npm/5.0.3/node_modules/npm/bin/npm-cli.js" install --production
npm WARN lifecycle The node binary used for scripts is /usr/bin/node but npm is using /opt/nodejs/8.1.0/bin/node itself. Use the `--scripts-prepend-node-path` option to include the path for the node binary npm was executed with.
npm WARN node_code@1.0.0 No description
updated 17 packages in 29.222s
npm WARN node_code@1.0.0 No repository field.
Finished successfully.
在Azure上诊断应用程序导致:
网址失败 50%的失败来自'/favicon.ico'路径。
如果有人能帮助我解决这个问题,我将非常感激,我是这种部署的新手。如果我没有提供一些必要的数据,请告诉我。
谢谢
答案 0 :(得分:0)
根据我的理解,这与部署问题无关。 503 Service Unavailable错误意味着网站的服务器现在根本不可用。此问题通常由应用程序级别问题引起,例如:
您可以查看Azure's official documentation以解决" 502 bad gateway "的HTTP错误。和" 503服务不可用"在您的Azure网络应用程序中。