目的:把用戶的請求分到各個服務器減輕壓力。nginx把監聽的端口的請求平均轉到布署了網站的服務器。
一、windows上安裝nginx
1.官網下載windows版的nginx
目前最新版本為1.13.2
2.下載解壓后
3.因為我電腦80端口已經被使用,所以修改配置文件改為監聽8080端口
4.雙擊主程序運行,可以看到nginx已經在進程里面運行了。
5.嘗試打開 http://localhost:8080/ 出現以下,就說明nginx安裝成功了
二、搭建兩個相同站點
1. 網站只有一個主頁
public?class?homecontroller?:?controller ?{ ?//?get:?home ?public?actionresult?index() ?{ ??list<string>?info?=?new?list<string>(); ??info.add("服務器名稱:"?+?server.machinename); ??info.add("客戶端ip地址:"?+?(request.userhostaddress=="::1"???"127.0.0.1":request.userhostaddress)); ??info.add("http端口:"?+?request.url.port); ??viewbag.info?=?info; ??return?view(); ?} ?}</string></string>
2. 因為我的nginx是裝在虛擬機里的,現在虛擬機里在iis部署一個站點,端口為:9000
3.本機布署一個站點,端口為:9001
三、修改nginx配置文件
1.在http節點下添加upstream(服務器集群),server設置的是集群服務器的信息,我這里搭建了兩個站點,配置了兩條信息。
2.在http節點下找到location節點修改
location / {
root html;
index home/index index.html index.htm; #修改主頁為home/index
#其中jq_one 對應著upstream設置的集群名稱
proxy_pass http://jq_one;
#設置主機頭和客戶端真實地址,以便服務器獲取客戶端真實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;
}
修改后的配置文件:
3.重啟nginx
輸入命令 nginx -s reload 回車
完成重啟
四、驗證
嘗試訪問監聽的8080端口,刷新幾次看
五、把nginx弄成服務,開機啟動
1.借助一個小工具winsw
下載簡單配置和.net環境兩個文件,根據自己環境,這里下的.net4
然后放到隨便一個目錄,這里放到和nginx一起,并把兩個文件改成相同的名字
2.修改配置文件
3.安裝服務
輸入命令 myapp.exe install 安裝服務
此時服務中已經有nginx了,然后啟動服務即可