1. 安裝
1) 為 新版從Nginx官網下載頁面(http://nginx.org/en/download.html)下載Nginx目錄。
2. 啟動與停止Nginx
Nginx目前只支援命令列操作,操作前先進入Dos命令環境,並進入Nginx部署目錄。
1) 啟動Nginx:start nginx
2)
這三個指令可分別做成bat文件,放在部署目錄下,方便後續操作。 start nginx.bat檔案內容:start nginxstop nginx.bat檔案內容:nginx -s stopreload nginx.bat檔案內容:nginx -s reload3. 下conf子目錄的nginx.conf檔(如nginx-1.5.13confnginx.conf)內容,可調整相關配置。
反向代理程式設定範例:
location / {
#設定主機頭與客戶端真實位址,以便伺服器取得用戶端真實IP
proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; off; #設定反向代理的位址代理地址依實際情況修改。
4. 負載平衡設定
nginx 的upstream預設是以輪詢的方式實現負載平衡,這種方式中,每個請求按時間順序逐一分配到不同的後端伺服器,如果後端伺服器down掉,能自動剔除。
另一個方式是ip_hash:每個請求按訪問ip的hash結果分配,這樣每個訪客固定訪問一個後端伺服器,可以解決session的問題。
負載平衡設定範例:
upstream backend {
#ip_hash;
#ip_hash;
server 192.168.1.252;
server
listen 80;
server_name trffweb;
location/ {
location/ {
proxy_pass http://backend;
}
}
Upstream命名與伺服器位址依實際情況修改。
5. 完整設定範例
nginx.conf:
worker_processes 1;
events {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream backend {
#ip_hash;
server 192.168.1.251;
server 192.168.1.252;
server 192.168.1.247;
}
server {
listen 80;
server_name 2;
location / {
#設定主機頭和客戶端真實位址,以便伺服器取得用戶端真實IP
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for;
#停用快取
proxy_pass http://backend;
,未經博主允許不得轉載。
以上就介紹了Nginx反向代理和負載平衡部署指南,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。