小编Ami*_*ron的帖子

Heroku + node.js:我有一台使用多个端口的服务器.我怎样才能让Heroku分配它们?

嗯,我会试着更清楚..

在我用node.js编写的应用程序服务器中,我有多个端口的内部代理:

  • 在我的8080港口我有我的休息api.
  • 在我的3000端口我有我的推送服务器和聊天.

我使用npm包子域路由器进行内部路由到端口,将"前端"中的子域暴露给那些代理回到那些端口.
代码演示: (<some-app>并非该应用的实名明显)

require('subdomain-router')
({
  host: '<some-app>.herokuapp.com',
  subdomains:
  {
    '': 8080,   // <some-app>.herokuapp.com <=> ::8080   --WORKS--
    'api': 8080,  // api.<some-app>.herokuapp.com <=> ::8080
    'chat': 3000, // chat.<some-app>.herokuapp.com <=> ::3000
    'push': 3000  // push.<some-app>.herokuapp.com <=> ::3000
  }
}).listen(process.env.PORT || 5000);
Run Code Online (Sandbox Code Playgroud)

API工作得很好,虽然我无法访问它<some-app>.herokuapp.com:8080,但只能通过<some-app>.herokuapp.com内部subdomain-router模块来实现它的魔力.
此外,我无法访问子域.在尝试访问时,api.<some-app>.herokuapp.comNo such app从heroku 获取错误页面.

TL; DR访问<some-app>.herokuapp.com工作(重定向到/v1我的API的路径),但无法访问<some-app>.herokuapp.com:8080,<some-app>.herokuapp.com:3000或 …

deployment subdomain port heroku node.js

23
推荐指数
2
解决办法
7823
查看次数

标签 统计

deployment ×1

heroku ×1

node.js ×1

port ×1

subdomain ×1