【发布时间】:2016-06-20 12:43:49
【问题描述】:
我使用 app.listen(PORTNO) 运行我的 express 应用程序。
它在127.0.0.1:PORTNO 上运行,也可以在127.0.0.1:3000 上运行
3000 是 express 开箱即用的默认端口号。
为什么会出现这种意外行为?
我尝试将 env 变量设置为生产环境并使用 http.createServer(app).listen(PORTNO);
我正在使用express-generator 生成我的快速应用程序文件。
如果相关,我在 Windows 机器上
更新:
我使用运行bin\www 的npm start 启动服务器,它指定了运行服务器的端口。
但这并不能解释绑定到两个端口:一个在app.js 中指定,另一个在bin\www 中为同一个应用程序指定,并且该应用程序可以从它们两者访问。
你能解释一下原因吗?
【问题讨论】:
-
您能否提供更多详细信息,例如创建服务器的代码。请确保在启动新实例之前杀死所有以前的实例。
-
刚刚更新了问题。该代码是使用 express-generator skelton 代码生成的,仅对设置端口进行了少量修改。另外我已经杀死了所有实例并尝试了
-
express-generator没有把app.listen()放在app.js里面,所以是后面加的东西。 -
PORTNO的值是多少? -
@robertklep 是的,这是设置端口号的一种方法。我添加了
标签: javascript express server