靜態資源訪問 存放在nginx的html頁面html
server { listen 80; server_name my.tmp.com; location / { root data/tmp1; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } server { listen 80; server_name you.tmp.com; location / { root data/tmp2; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }
server { listen 8080; server_name 8080.tmp.com; location / { root data/tmp1; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } server { listen 8081; server_name 8081.tmp.com; location / { root data/tmp2; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }
反向代理(Reverse Proxy)方式是指以代理服務器來接受internet上的鏈接請求,而後將請求轉發給內部網絡上的服務器,並將從服務器上獲得的結果返回給internet上請求鏈接的客戶端,此時代理服務器對外就表現爲一個反向代理服務器。
反向代理的好處隱藏真實內部ip地址,請求先訪問nginx代理服務器(外網能夠訪問到),在使用nginx服務器轉發到真實服務器中。nginx
server { listen 80; server_name proxy.tmp.com; location / { proxy_pass http://127.0.0.1:8090; index index.html index.htm; } }
Upstream Server 中文翻譯 上游服務器,意思就是負載均衡服務器設置,白話文表示(就是被nginx代理最後真實訪問的服務器)
負載均衡算法:配置多個上游服務器(真實業務邏輯訪問的服務器)的負載均衡機制
失敗重試機制:當上遊服務器(真實業務邏輯訪問的服務器)出現超時或者服務器不存活,是否考慮重試機制(補償機制)
服務器心跳檢測: 當上遊服務器(真實業務邏輯訪問的服務器),監控檢測|心跳檢測
Nginx負載均衡提供上游服務器(真實業務邏輯訪問的服務器),負載均衡、故障轉移、失敗重試、容錯、健康檢查等。
當上遊服務器(真實業務邏輯訪問的服務器)發生故障時,能夠轉移到其餘上游服務器(真實業務邏輯訪問的服務器)。算法
upstream backServer{ server 127.0.0.1:8090; server 127.0.0.1:8091; } server { listen 80; server_name proxy.tmp.com; location / { proxy_pass http://backServer; index index.html index.htm; } } }
weight(輪詢權值)
weight的值越大分配到的訪問機率越高,主要用於後端每臺服務器性能不均衡的狀況下。或者僅僅爲在主從的狀況下設置不一樣的權值,達到合理有效的地利用主機資源。後端
upstream backServer{ server 127.0.0.1:8080 weight=1; server 127.0.0.1:8081 weight=2; }
ip_hash
每一個請求按訪問IP的哈希結果分配,使來自同一個IP的訪客固定訪問一臺後端服務器,而且能夠有效解決動態網頁存在的session共享問題。俗稱IP綁定。
upstream backServer{緩存
server 127.0.0.1:8080 ; server 127.0.0.1:8081 ; ip_hash; }
server { listen 80; server_name www.tmp.com; location / { ### 指定上游服務器負載均衡服務器 proxy_pass http://backServer; ###nginx與上游服務器(真實訪問的服務器)超時時間 後端服務器鏈接的超時時間_發起握手等候響應超時時間 proxy_connect_timeout 1s; ###nginx發送給上游服務器(真實訪問的服務器)超時時間 proxy_send_timeout 1s; ### nginx接受上游服務器(真實訪問的服務器)超時時間 proxy_read_timeout 1s; index index.html index.htm; } }