Linux下Tomcat使用80埠

2021-07-25 10:05:11 字數 1414 閱讀 4100

應用場景

很多情況下,我們在linux伺服器上安裝了tomcat或者nginx之類的軟體.

當我們想用80埠的時候,如果不用root使用者啟動就會報錯.

這裡寫描述

這是因為,對於linux系統而言,1024以下的埠,普通使用者是無法使用的.

網上關於這方面的解決方案有兩種,一種呢就是什麼給檔案root許可權.

還有一種就是做埠的跳轉.我覺得可能埠跳轉可能比較安全吧.就著重介紹一下怎麼配置.

iptables

現在我們要做一件事情,假設我們的linux上安裝了tomcat.預設訪問埠是8080.

現在我想做到當使用者訪問80埠的時候就能訪問到tomcat了.

只需要在root使用者下執行命令

iptables -t nat -a prerouting -p tcp –dport 80 -j redirect –to-port 8080

這裡寫描述

-t nat : 指出我要操作什麼表.(不寫就表示filter.預設是filter)

-a prerouting : a 新增的意思.表示我要在prerouting 中新增乙個規則

–dport 80 : 如果請求80埠.

–to-port 8080 : 那麼就轉到8080埠.

測試如下 :

這裡寫描述

如何刪除規則

從上面我們可以看出,我們是在 nat表的prerouting 中新增的規則.

所以我們就要去nat表的prerouting 中刪除這個規則.

這裡寫描述

iptables -t nat -l -nv –line-numbers

這個命令的作用是,列出nat表中的規則,並且給個num.

然後我們就可以利用這個id刪除這個規則了.

如果你不寫-t nat 那麼預設查詢的就是filter表.那麼就無法查詢規則.

這裡寫描述

利用這個語句就可以刪除這個規則了.

-t nat : 表示我要操作這個表,不指明就是filter.

-d : 表示執行刪除操作

prerouting : 表示nat表中哪乙個鏈. 後面數字1 就是上圖中的num

這裡寫描述

總結我做了下面幾個實驗,nginx占用80埠.tomcat占用8080埠.

開啟nginx,tomcat

1. 如果開啟了轉跳,那麼就訪問不到nginx了.因為訪問80埠的時候一下跳到8080埠去了.

2 關閉埠跳轉,就能訪問到nginx了.

3 從上可以看出,埠跳轉不會占用埠.

4 如果新增規則訪問沒有達到想要的效果,清楚瀏覽器快取就可以了.

5 以上所有操作重啟以後全部消失.如果要保留操作,請執行 service iptables restart

Linux下,Tomcat8修改JVM記憶體配置

tomcat並不建議直接在catalina.sh裡配置變數,而是寫在與catalina同級目錄 bin目錄 下的setenv.sh裡。所以如果我們想要修改jvm的記憶體配置,那麼我們就需要修改setenv.s 件 預設沒有,需新建乙個setenv.sh 寫入 大小根據自己情況修改 export ca...

Linux下Tomcat使用80埠

很多情況下,我們在linux伺服器上安裝了tomcat或者nginx之類的軟體.當我們想用80埠的時候,如果不用root使用者啟動就會報錯.這是因為,對於linux系統而言,1024以下的埠,普通使用者是無法使用的.網上關於這方面的解決方案有兩種,一種呢就是什麼給檔案root許可權.還有一種就是做埠...

linux和mac下使用tomcat

本篇文章介紹如何在linux或mac上配置tomcate。由於底層都是unix,所以命令都一樣 wgettar xvf apache tomcat 8.5.24.tar.gz解壓後會得到乙個apache tomcat 8.5.24資料夾,進入這個資料夾下的bin目錄,執行下面的命令啟動 catali...