之是以為原創:是因為原來轉載的有錯,我修改了
Mac OS X 因為要綁定80端口需要ROOT權限, 但是如果用root權限啟動eclipse或tomcat又會造成, 啟動建立的各類檔案是root的,普通使用者無法删除。
為此, 我們可以通過pfctl做網絡層的端口轉發, 讓連接配接到本機80端口的請求, 都轉發到9090端口; (注意, Mac OS 會使用80端口做網絡檔案共享, 要先關閉掉)
修改/etc/pf.conf, 使用sudo vim /etc/pf.conf
pf.conf是對順序強要求的, 是以注意添加的内容放的順序
rdr pass on lo0 inet proto tcp from any to any port 80 -> 127.0.0.1 port 9090
添加
到pf.conf檔案的rdr-anchor "com.apple/*" 這一行後面。
lo0 通過ifconfig 看自己那個裝置綁定的是127.0.0.1, lo0是這個網絡裝置的名字。 修改好pf.conf之後執行一下指令,讓端口轉發生效
sudo pfctl -f /etc/pf.conf
sudo pfctl -e
在tomcat的配置中,設定啟動端口為9090
好了這樣隻需要普通權限啟動tomcat在9090端口即可, 通路本地應用時直接通路80端口即可