论坛首页 Java企业应用论坛

Jetty 运行于 8080 端口的解决方法

浏览 10403 次
该帖已经被评为精华帖
作者 正文
   发表时间:2003-10-12  
当使用 JBoss+Jetty 做开发时,由于 Jetty 本身就是作为一个单独的 HttpServer 来设计的,具有很好的性能,因此大部分情况下不再需要另外安装 Apache 并且连接 Apache 与 Jetty。Jetty 缺省是运行在 8080 端口,而 Http 协议的缺省端口为 80 端口。为了使用户可以直接访问 Web 应用,在 Linux 和 Windows 上有不同的解决方法。
在 Linux 上使用时,为了获得最大的安全性,应该以一个普通用户的帐号(比如 jboss)启动 JBoss+Jetty。这时候 Jetty 不能直接运行在 80 端口,因为只有 root 帐号启动的程序可以运行在这个端口。这时候可以使用 ipchains 或者 iptables 做一个 NAT,将 80 端口的 TCP 包重定向到 8080 端口。方法如下:
1、使用 ipchains(Linux 内核 2.2 以上)
/sbin/ipchains -I input --proto TCP --dport 80 -j REDIRECT 8080
2、使用 iptables(Linux 内核 2.4 以上)
/sbin/iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

在 Windows 上使用或者在 Linux 上以 root 帐号使用时,可以在启动 JBoss 时在 JVM 参数中设置一下系统属性 jetty.port,把 jetty.prot 设置为 80 即可。例如:
-Djetty.port=80

解决 Https 运行于非缺省端口的方法基本上是一样的。
   发表时间:2003-10-13  
看来dlee是Jetty Expert. 谢谢
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics