iT邦幫忙

1

[已解決] ubuntu 18.04 無法打開port 80

  • 分享至 

  • xImage

已使用ufw allow 80、ufw allow 5000,
並使用tomcat來確認是否有開啟port
結果...只能開啟port 5000,卻無法開啟port 80,
請問我還需要改那些設定嗎?

輸入sudo ufw status

狀態: 啓用
至                          動作          來自
-                          --          --
80                         ALLOW       Anywhere                  
5000                       ALLOW       Anywhere                  
80 (v6)                    ALLOW       Anywhere (v6)             
5000 (v6)                  ALLOW       Anywhere (v6) 

輸入netstat -tln查看

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:5939          0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:902             0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:33060         0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:5938            0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN     
tcp6       0      0 :::21                   :::*                    LISTEN     
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN     
tcp6       0      0 ::1:631                 :::*                    LISTEN     
tcp6       0      0 :::5000                 :::*                    LISTEN     
tcp6       0      0 :::902                  :::*                    LISTEN     
tcp6       0      0 :::5938                 :::*                    LISTEN 

最後到tomcat內修改 /conf/server.xml

<Connector port="5000" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

=> 此時瀏覽器輸入127.0.0.1:5000可以看到網頁

但是若改為

<Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

=> 此時瀏覽器輸入127.0.0.1 就看不到網頁了...
請問有什麼方式可以打開port 80嗎?

看更多先前的討論...收起先前的討論...
haward79 iT邦研究生 1 級 ‧ 2023-02-13 13:06:24 檢舉
你有確認過 Tomcat 的 log 嗎?
有可能是權限問題所以掛不上 port 80
DennisLu iT邦好手 1 級 ‧ 2023-02-13 13:23:57 檢舉
建議看看 Tomcat 的 log 應該有失敗的線索。
froce iT邦大師 1 級 ‧ 2023-02-13 13:33:03 檢舉
一般使用者無法使用1024以內的port。
https://serverfault.com/questions/112795/how-to-run-a-server-on-port-80-as-a-normal-user-on-linux
DavidLan iT邦新手 5 級 ‧ 2023-02-13 14:55:01 檢舉
catalina.日期log有看到:
org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:475)
Caused by: java.net.BindException: 拒絕不符權限的操作
froce iT邦大師 1 級 ‧ 2023-02-13 15:01:54 檢舉
你這個就是踩到我和haward79說的。
https://blog.xuite.net/tolarku/blog/208730160-Tomcat+%E9%81%8B%E8%A1%8C%E5%9C%A8+port+80
DavidLan iT邦新手 5 級 ‧ 2023-02-15 09:47:46 檢舉
有的~ 謝謝您們~ 有解決了!!!
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
JamesDoge
iT邦高手 1 級 ‧ 2023-02-17 10:52:00

是否有其他服務佔用了 port 80?

執行以下指令確認是否有服務在使用

sudo lsof -i :80

另外,如果在使用 Ubuntu 18.04 的環境下開啟 80 port,須確認是否已安裝 Apache2 服務。若有安裝 Apache2,請先將 Apache2 服務停用再測試是否能夠開啟 80 port。

我要發表回答

立即登入回答