通過域名訪問自己部署到服務器上的項目
如何不輸入項目名端口號直接訪問java web項目
1、省略輸入端口號的步驟
在Linux的下面部署了tomcat,為了安全我們使用非root用戶進行啟動,但是在域名綁定時無法直接訪問80端口號。眾所周知,在unix下,非root用戶不能監聽1024以上的端口號,這個tomcat服務器就沒辦法綁定在80端口下。所以這里需要使用linux的端口轉發機制,把到80端口的服務請求都轉到8080端口上。
在root權限下面運行一下命令:
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
如果想取消80端口的自動轉發:
iptables -t nat -D PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
注意:網上朋友的命令dport 前面都是 一個 -,通常都會報錯。另外如果防火牆重新啟動,該命令就會失效。
可以使用下面的命令把該規則保存到iptables里面 :
service iptables save
2、省略輸入項目名稱的步驟
在tomcat的安裝目錄的conf下找到server.xml文件,修改最下面的內容為如下圖所示的樣子:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="/" docBase="lxl" debug="0" reloadable="true"/>
Tomcat8/9修改context.xml如下:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="/" docBase="lxl" debug="0" reloadable="true"> <CookieProcessor className ="org.apache.tomcat.util.http.LegacyCookieProcessor"/> </Context>