Glassfish无法启动,端口被占用

Glassfish cannot start, port is occupied

我尝试 运行 我的 war 应用程序在端口 80 而不是 8080 上。但是,当我将 Glassfish 的端口号更改为 80 时,它无法启动,因为 apache 使用该端口。我的网站正在该端口上工作,我想 运行 我的应用程序在我网站的子域中。我应该怎么做才能摆脱 URL 中的 8080 端口?

两个应用程序不能在不同的子域上共享一个 TCP 端口,因为 subdomain/domain 的概念特定于 DNS 和 HTTP,而不是 TCP 本身。但是,您可以将 Apache 和 Glassfish 都保留在备用端口上(可能只监听 127.0.0.1)并使用 nginx 或其他反向代理。或者,您可以将 Apache 保留在端口 80 上,并指示它将子域上的请求反向代理到 Glassfish,或相反。

您可以在 Glassfish 上托管您的网站。它有一个内置的 http 服务器。

右键单击服务器。

点击添加服务器。

添加 glassfish 服务器信息。点击选择。然后点击下一步。

之后,创建的服务器在服务器选项卡下可用。右键单击创建的服务器并启动服务器,然后创建新的Web应用程序。