![](/img/trans.png)
[英]How do get ILPIP (PIP) from within a Node.JS application running ona VM in Azure?
[英]How to get standard out from a Node.js application in Azure?
我们有一个具有很大代码库的Node.js应用程序,我们正尝试将其部署到Azure网站。 我的问题是,当我部署应用程序并尝试访问它时,我仅收到一条消息,内容为“由于发生内部服务器错误而无法显示该页面”。
根据http://azure.microsoft.com/zh-CN/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"
}
如果应用程序成功启动,您应该可以在以下位置找到标准输出
D:\home\LogFiles\Application
在Azure网站中,无需进行任何配置。
但是在这里,它看起来像是与web.config错误/丢失有关的错误。 节点应用可能无法启动。 你可以试试:
编辑:当您更改server.js的位置时,您也必须更改web.config。 web.config中的更改不正确。 而package.json仅用作在git部署期间生成web.config的提示。 要使“ hello world”发挥作用,您可以选择
然后,您可以尝试使用更大的应用程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.