nginx初入門之請求轉發配置
阿新 • • 發佈:2019-01-09
專案現狀:
1、使用技術:springboot +springcloud +eureka分散式專案 ;
2、專案型別:分散式專案(殼子工程(web專案)、註冊中心(jar專案)、服務工程(Java專案,可直接通過命令執行));
3、將專案部署到伺服器,並使用nginx完成負載均衡操作;
部署過程:
1、伺服器設定:安裝jdk、tomcat、nginx(網上有具體教程此處略過);
2、配置nginx
server {
#監聽 80埠號
listen 80;
# server_name 127.0.0.1;
#charset koi8-r;
#access_log logs/host.access.log main;
#過濾地址
location /eureka {
proxy_pass http://127.0.0.1:7070/eureka;
}
}
首先啟動nginx,訪問伺服器地址:http://192.168.XXX.XXX:80/eureka 則,則訪問路徑直接跳轉到:伺服器的7070/eureka 埠;這是最簡單的配置;在配置的過程中出現了一個問題:我過濾的地址為根目錄時候(location /),轉發地址可以為: http://127.0.0.1:7070/ ,但是我的過濾地址為 location /eureka,轉發地址為 http://127.0.0.1:7070/ ,則系統報404,非常奇怪,但是我將地址轉發地址的contextpath修改為:http://127.0.0.1:7070/eureka,則系統又能正常訪問。即 location 後面的路徑地址必須和轉發埠號對應的後面的路徑地址相同!!! 因為只有相同,才能確保你每一次訪問轉發後的地址時,都會先走nginx,如果兩者不繫統,那麼就不能保證你每次訪問的地址都能走nginx,這樣負載均衡就沒用了。這一點需要特別注意!!!