Nginx的作用和優點,這里不必多說,今天主要是nginx負載均衡實驗,把做的步驟記錄下來,作為一個學習筆記吧,也可以給大家做下參考。
1.Nginx安裝
1.下載地址:http://nginx.org/en/download.html
2.解壓到后在window的cmd窗口,輸入如下圖所示的命令,進入到nginx目錄,使用“start nginx.exe ”進行nginx的安裝,如下圖所示:
安裝成功后,在“任務管理器”中會看到“nginx.exe”進程。
3.在瀏覽器地址欄輸入:127.0.0.1,會看到nginx歡迎界面。說明Nginx已經安裝成功。
2.站點搭建及配置
1.搭建兩個iis站點
新建一個站點下只有一個簡單的index頁面,將兩個站點都部署到本機了,分別綁定了8097和8098兩個端口。
2.修改nginx配置信息,nginx的配置信息,都在nginx.conf ,這個文件中配置。
a.修改nginx監聽端口,修改http server下的listen節點值
listen 8096;
b.在http節點下添加upstream(服務器集群),server設置的是集群服務器的信息,我這里搭建了兩個站點,配置了兩條信息。
#服務器集群名稱為test.com
upstream test.com {
server 127.0.0.1: 8097;
server 127.0.0.1: 8098;
}
c.在http節點下找到location節點修改
location / {
root html;
index index.aspx index.html index.htm; #修改主頁為index.aspx
#其中test.com 對應著upstream設置的集群名稱
proxy_pass http:// test.com;
#設置主機頭和客戶端真實地址,以便服務器獲取客戶端真實IP
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
修改完成配置文件之后,重啟nginx服務,
3.運行結果
訪問http://localhost:8096/index.aspx
可以看到,我們的請求被分發到了8097站點和8098站點,說明負載均衡搭建成功了。
停掉8098站點,刷新頁面,則請求會分發給8097 站點, 說明其中一個站點掛了,只要還有一個站點是好的,系統仍然能夠繼續提供服務。
4.session共享
a.使用數據庫保存session信息,可以查看本人前一篇文章:數據庫實現多站點共享Session
b.使用nginx將同一ip的請求分配到固定服務器,修改如下。ip_hash會計算ip對應hash值,然后分配到固定服務器,(這個還沒試驗過)
upstream test.com {
server 127.0.0.1: 8097;
server 127.0.0.1: 8098;
ip_hash;
}
c.搭建一臺Redis服務器,對session的讀取都從該Redis服務器上讀取。
注意:nginx作為負載均衡服務器時候,無法正常加載css和js這些文件而出現這樣的問題,通過一番搜索和查找,修改nginx下的nginx.conf配置文件才得以正常顯示,修改的配置如下:
![]() |
不含病毒。www.avast.com |