【发布时间】:2014-08-16 06:55:35
【问题描述】:
我们有一个带有相当大代码库的 Node.js 应用程序,我们正尝试将其部署到 Azure 网站。我的问题是,当我部署应用程序并尝试访问它时,我只收到一条消息“无法显示页面,因为发生了内部服务器错误”。
根据http://azure.microsoft.com/en-us/documentation/articles/web-sites-nodejs-debug/,我应该能够配置一些设置并将我的标准输出记录到文件中 - 好吧,它不起作用。在 /LogFiles 中,我可以看到 /git、/html 和 /DetailedErrors,但这些文件夹中没有一个包含标准输出日志。
我已经使用 Visual Studio 部署了应用程序。我创建了一个空白 Azure 项目,并手动添加了我需要的所有文件夹和文件。我还创建了一个 iisnode.yml 文件,其中包含以下配置:
loggingEnabled: true
devErrorsEnabled: true
logDirectory: ./logs
debugHeaderEnabled: true
我后来添加的最后两行,第一行来自教程。我还有一个 web.config 文件,其中的内容我还没有真正接触过。
我已尝试配置网站 UI 中可用的设置,但我并没有真正取得任何进展。我认为目前它们几乎是默认的。
很抱歉,我无法为您提供更多信息。我真的有点想把头撞到墙上,因为我发现的所有教程基本上都指出,如果我这样做和那样,一切都应该正常工作。问题是,它没有。悲伤的脸。
编辑:我可能应该补充一点,我的 server.js 位于一个名为 /NodeServer 的文件夹中。它不像 Azure 所假设的那样位于根目录中。
Edit2:我部署了一个 Hello World 示例并让它工作,但是当我尝试从根目录移动 server.js 文件时,我无法让它工作了。
我已经在web.config中加了一个标签,这样结构就基本是这样了
configuration
location path="NodeServer"
system.webServer
我还编辑了我的 package.json 使其显示
"main":"NodeServer/server.js",
"scripts":{
"start":"cd NodeServer && node server.js"
}
【问题讨论】:
标签: node.js azure azure-web-app-service