【发布时间】:2012-10-04 08:15:25
【问题描述】:
以前有人问过这个问题,但没有给出真正的答案(据我所知)。
这是原始问题的链接: Start Tomcat from Eclipse in port 80 in Ubuntu with Authbind.
- 我确实需要在端口 80 上运行 tomcat。
- 我宁愿不必在计算机上安装 tomcat。我认为这不是必需的。
- 我想避免使用端口转发(我现在必须这样做,因为我没有找到其他解决方案)
我正在使用:
- Ubuntu 12.04
- Eclipse 朱诺
- 雄猫 7
- OpenJDK 64 位服务 - java 版本“1.7.0_07”
我能够以非 root 用户身份在端口 80 中启动 tomcat,而无需安装 tomcat。
我关注这篇文章: http://java.dzone.com/articles/running-tomcat-port-80-user 关于这个主题的文章很多,但我发现这篇文章简单而完整。
当我尝试使用 eclipse 启动 tomcat 时,它总是失败并抱怨端口 80 已被使用。但这不是真的。事实上,当 eclipse 运行时,当错误显示在屏幕上时,我可以在端口 80 上手动启动 tomcat。
我注意到 eclipse 在没有访问该端口的权限时抱怨端口 80 被使用。在无法在端口 80 上手动运行 tomcat 之前,我确实遇到了同样的错误。不同之处在于,当我手动运行 tomcat 时,它确实记录了访问权限错误,并且 eclipse 抱怨端口的使用。
我已修改 eclipse tomcat 启动器以包含选项“-Djava.net.preferIPv4Stack=true”并将 tomcat 启动为“authbind --deep start”
但我总是遇到同样的错误。
如果我以 root 身份启动 eclipse,它可以正常工作,所以我相信问题与端口 80 的访问权限有关,而不是与要使用的端口有关。
我确实假设 eclipse 使用与启动 eclipse 相同的用户权限启动 tomcat。
有人可以提供一些支持吗?我可以使用端口转发来工作,但我真的很想知道我缺少什么以及如何正确地做到这一点。
【问题讨论】:
标签: linux eclipse tomcat ubuntu port80