個人簡介:Java領(lǐng)域新星創(chuàng)作者;阿里云技術(shù)博主、星級博主、專家博主;正在Java學(xué)習(xí)的路上摸爬滾打,記錄學(xué)習(xí)的過程~
個人主頁:.29.的博客
學(xué)習(xí)社區(qū):進去逛一逛~
??Nginx配置文件結(jié)構(gòu)(conf/nginx.conf)
- nginx配置文件整體分為三部分:
-
- 全局塊 :Nginx運行相關(guān)的全局配置
- events塊 :網(wǎng)絡(luò)連接相關(guān)的配置
- http塊 :代理、緩存、日志記錄、虛擬主機配置
-
- http全局塊
- Service塊
-
- Service全局塊
- location塊
注:http塊中可配置多個Service塊,每個Service塊可配置多個location塊。
??Nginx部署靜態(tài)資源
-
Nginx可以作為靜態(tài)web服務(wù)器來部署靜態(tài)資源。靜態(tài)資源指在服務(wù)端真實存在并且能夠直接展示的一些文件,比如常見的html頁面、css文件、js文件、圖片、視頻等資源。
-
相對于Tomcat,Nginx處理靜態(tài)資源的能力更加高效,所以在生產(chǎn)環(huán)境下,一般都會將靜態(tài)資源部署到Nginx中。將靜態(tài)資源部署到Nginx非常簡單,只需要將文件復(fù)制到Nginx安裝目錄下的html目錄中即可。
server塊
:
server {
listen 80; # 監(jiān)聽端口
server_name localhost; # 服務(wù)器名稱(域名)
location / { # 匹配客戶端請求url
root html; # 指定靜態(tài)資源的目錄
index index.html index.htm; # 指定默認(rèn)首頁
}
error_page 500 502 503 504 /50x.html; # 指定報錯頁面
location = /50x.html {
root html;
}
}
??Nginx反向代理
正向代理
:
是一個位于客戶端和原始服務(wù)器(oricin server)之間的服務(wù)器,為了從原始服務(wù)器取得內(nèi)容,客戶端向代理發(fā)送一個請求并指定目標(biāo)(原始服務(wù)器),然后代理向原始服務(wù)器轉(zhuǎn)交請求并將獲得的內(nèi)容返回給客戶端。
正向代理的典型用途是為在防火墻內(nèi)的局域網(wǎng)客戶端提供訪問internet的途徑。
正向代理一般是在客戶端設(shè)置代理服務(wù)器,通過代理服務(wù)器轉(zhuǎn)發(fā)請求,最終訪問到目標(biāo)服務(wù)器。
反向代理
:
反向代理服務(wù)器位于用戶與目標(biāo)服務(wù)器之間,但是對于用戶而言,反向代理服務(wù)器就相當(dāng)于目標(biāo)服務(wù)器,即用戶直接訪問反向代理服務(wù)器就可以獲得目標(biāo)服務(wù)器的資源,反向代理服務(wù)器負(fù)責(zé)將請求轉(zhuǎn)發(fā)給目標(biāo)服務(wù)器。
用戶不需要知道目標(biāo)服務(wù)器的地址,也無須在用戶端作任何設(shè)定。
?配置反向代理
配置方式
:
在某個server塊的location塊中,添加proxy_pass屬性,并配置反向代理需要請求轉(zhuǎn)發(fā)到服務(wù)。
server {
listen 82; # 監(jiān)聽端口
server_name localhost; # 服務(wù)器名稱
location / { # 匹配客戶端請求url
# 配置反向代理,將請求轉(zhuǎn)發(fā)到指定服務(wù)
proxy_pass http://192.168.88.161:8080;
}
}
??Nginx負(fù)載均衡
介紹
:
早期的網(wǎng)站流量和業(yè)務(wù)功能都比較簡單,單臺服務(wù)器就可以滿足基本需求,但是隨著互聯(lián)網(wǎng)的發(fā)展,業(yè)務(wù)流量越來越大并且業(yè)務(wù)邏輯也越來越復(fù)雜,單臺服務(wù)器的性能及單點故障問題就凸顯出來了,因此需要多臺服務(wù)器組成應(yīng)用集群進行性能的水平擴展以及避免單點故障出現(xiàn)。
- **應(yīng)用集群:**將同一應(yīng)用部署到多臺機器上,組成應(yīng)用集群,接收負(fù)載均衡器分發(fā)的請求,進行業(yè)務(wù)處理并返回響應(yīng)數(shù)據(jù)
- **負(fù)載均衡器:**將用戶請求根據(jù)對應(yīng)的負(fù)載均衡算法分發(fā)到應(yīng)用集群中的一臺服務(wù)器進行處理
?負(fù)載均衡實現(xiàn)
配置方式
:
- http塊中使用upstream配置負(fù)載均衡的服務(wù)器組。
- 將服務(wù)器組名稱作為反向代理請求的服務(wù)域名。
- 可使用weight設(shè)置權(quán)重,權(quán)重越大優(yōu)先級越高。
upstream targetserver { # ①upstream指令可以指定一組服務(wù)器,targetserver是服務(wù)器名,可自定義,可使用weight設(shè)置權(quán)重,權(quán)重越大優(yōu)先級越高。
server 192.168.88.129:8080 weight=10;
server 192.168.88.162:8080;
}
server {
listen 82; # 監(jiān)聽端口
server_name localhost; # 服務(wù)器名稱
location / { # 匹配客戶端請求url
# ②配置反向代理,將請求轉(zhuǎn)發(fā)到指定服務(wù)
proxy_pass targetserver ;
}
}
負(fù)載均衡策略:
文章來源:http://www.zghlxwxcb.cn/news/detail-640036.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-640036.html
到了這里,關(guān)于【Nginx】靜態(tài)資源部署、反向代理、負(fù)載均衡的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!