tomcat+nginx實現共用80埠遇到的問題
首先 在IDEA中 指定 專案名 rzhy,埠8082 ,那麼訪問地址就由locaLhost:8080變成了 localhost:8082/rzhy
這個很簡單 ,再啟動nginx (不會配置可以檢視我的部落格https://blog.csdn.net/ajax_yan/article/details/84142531)
那麼,接下來要說的是,在本地tomcat中跑war專案時,出現的問題
首先 ,第一次嘗試,在webapps下面Root中 ,將IDEA編譯過的專案直接複製裡面的檔案,扔到ROOT(這個是tomcat在啟動時,會自動載入的webapps中的預設專案之一),修改埠號8082,然後測試nginx跳轉,發現 出現問題,通過localhost訪問時(這個是預設80埠,nginx配置好的),直接跳轉到了localhost:8082,這顯然不是我們要的結果 (我們要的是localhost/rzhy),
別急 ,解決方案就是 ,將專案重新打包,然後部署在webapps同級路徑,這個時候 tomcat啟動肯定不會載入你的專案。
需要在server.xml配置
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context path="/rzhy" docBase="F:\apache-tomcat-8.5.35\xfrzhy" reloadable="true" allowLinking="true"></Context>
path:是指定的訪問路徑專案名稱 localhost:8082/rzhy ,對應nginx中的localhost/rzhy
doBase是你的專案的絕對路徑 ,或者相對路徑 隨意
然後reloadable :true 是自動解壓
接下來,再去執行start.bat,發現 可以成功的通過nginx80埠訪問 專案的8082:rzhy了
如果解決了你的問題,請給個好評。