process.env.PORT未定义
问题描述:
我正在尝试在运行离子窗口服务器2012的node.js应用程序上进行生产。经过一个星期的故障排除并阅读了所有可以联机的问题,是“process.env.PORT”变量。process.env.PORT未定义
的症状如下:
网站正常工作时:
set PORT=3510 in console
domain.com:3510/index.html in remote browser
然而,当我键入:
domain.com
我得到一个404 - 找不到文件或目录。
当我CONSOLE.LOG的“process.env”对象在我server.js的启动时,执行console.log打印具有多个属性,但没有“PORT”属性的对象(除非我“设置PORT = 3510" )。在启动server.js之前没有手动设置端口,“process.env.PORT”console.logs报告未定义。
但是,如果手动指定端口,服务器仍然不起作用,因为根据我读的内容,节点期望“process.env.PORT”是一个命名管道而不是数字。
所以这个问题是非常具体:
如何在Windows中设置的“process.env.PORT变量” 2012服务器,以便能的NodeJS使用它?
答
您需要将其设置在web.config文件中。您可以用您需要的值将一个键设置为“PORT”。以下面的web.config文件为例...
<configuration>
<appSettings>
<add key="PORT" value="3510" />
</appSettings>
...(Other configurations here)
</configuration>