切記解壓的路徑里面不能包含中文0丈肌F氚睢锰蓬!
1锣险、windows下nginx的安裝
1.1.下載nginx
下載地址:http://nginx.org/en/download.html? ? ? ?
下載穩(wěn)定版本,以Windows nginx-1.18.0為例篙螟,直接下載 nginx-1.18.0.zip
下載后解壓尖坤,解壓后目錄D:\Program Files\nginx-1.18.0里,如下
1.2.啟動(dòng)nginx
有很多種方法啟動(dòng)nginx
(1)直接雙擊nginx.exe闲擦,雙擊后一個(gè)黑色的彈窗一閃而過(guò)
(2)打開cmd命令窗口慢味,切換到nginx解壓目錄下,輸入命令 nginx.exe 或者 start nginx 墅冷,回車即可纯路。
1.3.檢查nginx是否啟動(dòng)成功
1)、直接在瀏覽器地址欄輸入網(wǎng)址 http://localhost:8333(最初是80端口寞忿,但是我的已經(jīng)被占用了驰唬,注意這個(gè)是在nginx-1.18.0\conf\nginx.conf里面配置的)回車,出現(xiàn)以下頁(yè)面說(shuō)明啟動(dòng)成功腔彰。
2)叫编、也可以在cmd命令窗口輸入命令 tasklist /fi "imagename eq nginx.exe" ,出現(xiàn)如下結(jié)果說(shuō)明啟動(dòng)成功
3)霹抛、nginx的配置文件是conf目錄下的nginx.conf搓逾,默認(rèn)配置的nginx監(jiān)聽的端口為80,如果80端口被占用可以修改為未被占用的端口即可杯拐。
4)霞篡、檢查80端口是否被占用的命令是: netstat -ano | findstr 0.0.0.0:80 或 netstat -ano | findstr "80"。
當(dāng)我們修改了nginx的配置文件nginx.conf 時(shí)端逼,不需要關(guān)閉nginx后重新啟動(dòng)nginx朗兵,只需要執(zhí)行命令 nginx -s reload 即可讓改動(dòng)生效。
2.nginx的啟動(dòng)和關(guān)閉---------------------
nginx的啟動(dòng)和關(guān)閉
nginx -h 查看幫助信息
nginx -v 查看Nginx的版本號(hào)
nginx -V 顯示Nginx的版本號(hào)和編譯信息
start nginx 啟動(dòng)Nginx
nginx -s stop 快速停止和關(guān)閉Nginx
nginx -s quit 正常停止或關(guān)閉Nginx
nginx -s reload 配置文件修改重新加載
nginx -t 測(cè)試Nginx配置文件的正確性及配置文件的詳細(xì)信息
tasklist /fi "imagename eq nginx.exe" windows命令框下查看nginx的進(jìn)程命令
3.應(yīng)用場(chǎng)景
3.1 靜態(tài)網(wǎng)站
在瀏覽器打開 localhost:8012顶滩,效果如下:
3.2 負(fù)載均衡
前提是你要打開tomcat服務(wù)
拓展:
########用戶-->nginx負(fù)載均衡-->{Tomcat1余掖,Tomcat2}訪問(wèn)動(dòng)態(tài)資源######################
#(1)通過(guò)在nginx的nginx.conf 文件進(jìn)行配置
#第一步:在http模塊上添加:
? ? upstream www.myweb.com {? ? #www.myweb.com是個(gè)名字,寫什么都可以
? ? #有幾個(gè)tomcat服務(wù)器礁鲁,寫幾個(gè)server
? ? ? ? server 127.0.0.1:9100 weight=3;
? ? ? ? server 127.0.0.1:9200 weight=1;
? ? }
#其中weight表示權(quán)重盐欺,用于后端服務(wù)器性能不均的情況赁豆,訪問(wèn)比率約等于權(quán)重之比,權(quán)重越大訪問(wèn)機(jī)會(huì)越大
#upstream是配置nginx于后端服務(wù)器負(fù)載均衡非常重要的一個(gè)模塊找田,并且它還能對(duì)后端的服務(wù)器的健康狀態(tài)進(jìn)#行檢查歌憨,若后端服務(wù)器中的一臺(tái)發(fā)生故障着憨,則前端的請(qǐng)求不會(huì)轉(zhuǎn)發(fā)到該故障的機(jī)器
#(2)第二步:在server模塊里添加
? location /myweb {
? #proxy_pass是代理轉(zhuǎn)發(fā)墩衙, 轉(zhuǎn)發(fā)到后面配置的路徑
? ? ? ? proxy_pass http://www.myweb.com? #http:// 是固定的, www.myweb.com是上面 #upstream里配置的名稱
? ? }
#其中www.myweb.com字符串要和upstream后面的字符串相等
#以上兩步: 就可以實(shí)現(xiàn)負(fù)載均衡
##############################################################################
#(3)負(fù)載均衡策略:(4種)
#(一)輪詢(默認(rèn)):在server后不添加weight參數(shù)
? ? #在http模塊上添加:
? ? ? ? ? ? upstream www.myweb.com {
? ? ? ? ? ? ? ? server 127.0.0.1:9100;
? ? ? ? ? ? ? ? server 127.0.0.1:9200;
? ? ? ? ? ? }
#(二)權(quán)重:在server后添加weight參數(shù)甲抖,訪問(wèn)幾率和weight比接近
? ? ? #在http模塊上添加:
? ? ? ? ? ? upstream www.myweb.com {
? ? ? ? ? ? ? ? server 127.0.0.1:9100 weight=3;
? ? ? ? ? ? ? ? server 127.0.0.1:9200 weight=1;
? ? ? ? ? ? }
#(三)ip_hash:也叫IP綁定漆改,每個(gè)請(qǐng)求訪問(wèn)IP的hash值分配,這樣每個(gè)訪問(wèn)客戶端會(huì)固定訪問(wèn)一個(gè)后端服務(wù)器准谚,可##以解決會(huì)話Session丟失問(wèn)題
#在http模塊上添加:
? ? ? ? ? ? upstream www.myweb.com {
? ? ? ? ? ? ? ? ip_hash;? ? #需要寫在前面
? ? ? ? ? ? ? ? server 127.0.0.1:9100;
? ? ? ? ? ? ? ? server 127.0.0.1:9200;
? ? ? ? ? ? }
#(四)最少連接:web請(qǐng)求會(huì)被轉(zhuǎn)發(fā)到最少連接數(shù)的服務(wù)器上
? ? ? ? ? ? upstream www.myweb.com {
? ? ? ? ? ? ? ? least_conn; #需要寫在前面
? ? ? ? ? ? ? ? server 127.0.0.1:9100;
? ? ? ? ? ? ? ? server 127.0.0.1:9200;
? ? ? ? ? ? }
#(4)負(fù)載均衡其他配置
#備份機(jī)配置
? ? ? ? upstream www.myweb.com {
? ? ? ? ? ? server 127.0.0.1:9100;
? ? ? ? ? ? server 127.0.0.1:9200 backup;
? ? ? ? ? ? #其他所有的非backup機(jī)器down的時(shí)候挫剑,才請(qǐng)求backup機(jī)器
? ? ? ? }
? ? ? ? upstream www.myweb.com {
? ? ? ? ? ? server 127.0.0.1:9100;
? ? ? ? ? ? server 127.0.0.1:9200 down; #down表示當(dāng)前的server是down狀態(tài),不參與負(fù)載均衡
? ? ? ? }