我正在Heroku上部署一个嵌入式Jetty应用程序,它会在端口80上侦听http。但是,在启动时我读取System.getenv(" PORT")值并使用该端口值初始化jetty服务器,如下所示:
if (isproduction) {
LOGGER.log(Level.INFO, "System.getenv(\"PORT\"):{0}", System.getenv("PORT"));
port = Integer.valueOf(System.getenv("PORT"));
baseurl = "http://xxxx-xxxx.herokuapp.com";
}
LOGGER.log(Level.INFO, "Starting jetty on port: {0}", port);
final Server jettyServer = new Server(port);
jettyServer.setHandler(context);
以上打印
2017-05-25T17:34:02.943531+00:00 app[web.1]: INFO: System.getenv("PORT"):45203
2017-05-25T17:34:02.945234+00:00 app[web.1]: INFO: Starting jetty on port: 45203
但是,命令行中的heroku open
会在端口80打开应用程序。这不是一个真正的问题(应用程序完全可以运行),但它是意外行为。任何人都可以了解最新情况?