nginx 反向代理 404問題
阿新 • • 發佈:2020-12-25
技術標籤:javaproblemsnginxjavatomcatlinux
問題描述
電腦上裝了兩臺虛擬機器,內容如下:
- shanliang 192.168.175.130 有一個tomcat
- banyu 192。168.175.128 有一個tomcat、有一個nginx
我在兩臺虛擬機器的 tomcat安裝目錄下 /webapps下建立了 test資料夾,並放了一個a.html 頁面,內容是 < h1 > xxxx< /h1 >
單機測試,兩個 tomcat 頁面
- shanliang 的 測試頁面如下
- banyu 的測試頁面
通過配置 nginx ,嘗試使用反向代理
server {
listen 9001;
server_name localhost;
location ~ /banyu/ {
proxy_pass http://192.168.175.128:8080;
}
location ~ /shanliang/ {
proxy_pass http://192.168.175.130:8080;
}
}
上面的程式碼執行起來,報錯404。。。
- 我想著既然報錯,那就去看日誌,日誌內容如下
然後百度了一下,是圖示問題,加上如下內容
location /favicon.ico { log_not_found off; access_log off; }
反手一個 nginx -s reload
重啟,還是404,這次還沒錯誤日誌了,那我去看看成功的日誌,發現還真在裡面。。。
那就是配置問題了,琢磨著看看開發文件,github一搜 nginx ,進去一看,開發文件排版有點差,這就算了,都是英文,腦殼有點疼。
最終解決方案
server { listen 9001; server_name localhost; location /banyu/ { proxy_pass http://192.168.175.128:8080/; } location /shanliang/ { proxy_pass http://192.168.175.130:8080/; } location /favicon.ico { log_not_found off; access_log off; } }
執行結果
總結
- 有問題還是看開發文件來的實在,百度有時候真的很費力不討好。
- 英語很重要,不太行的英語看英文文件有點痛苦