萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 作業系統 >  >> Linux 教學

Linux 讓 Tomcat 啟動在 80 埠的解決方案

Linux 系統中,若將 Tomcat server.xml 連接器埠改為 80,以 tomcat 用戶啟動會報錯:

Catalina.start: LifecycleException: null.open: java.net.BindException: Permission denied: 80

原因是 Linux 規定只有 root 能綁定 1024 以下低號埠,Tomcat 服務通常不以 root 身份運行。

解決方法:使用 iptables 埠號轉發

無需改 Tomcat 埠為 80,也無需 root 啟動。保持 Tomcat 監聽 8080,透過 iptables 將 80 埠請求轉發至 8080。

  1. 確認 server.xml Connector 埠保持 8080。
  2. 執行 iptables 設定 NAT 轉發規則:
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

若同時需 HTTPS(443 埠),同樣新增轉發規則:

iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-port 8443

完成後透過瀏覽器存取 80 埠,實際請求由 Tomcat 在 8080 埠處理。

copyright © 萬盛學電腦網 all rights reserved