nginx 电子书_Nginx最详细的反向代理配置步骤,拿去不谢
點(diǎn)擊“藍(lán)字”關(guān)注我們
#今日份技術(shù)干貨#
使用Nginx實(shí)現(xiàn)Web反向代理功能,實(shí)現(xiàn)如下功能:
◆后端Web服務(wù)器兩臺(tái),可以使用httpd實(shí)現(xiàn)
◆Nginx采用輪詢的方式調(diào)用后端Web服務(wù)器
◆兩臺(tái)Web服務(wù)器的權(quán)重要求設(shè)置為不同的值
◆最大失敗次數(shù)為1,失敗超時(shí)時(shí)間為30秒
方案
使用4臺(tái)centos7虛擬機(jī),其中一臺(tái)作為Nginx代理服務(wù)器,該服務(wù)器需要配置兩塊網(wǎng)卡,IP地址分別為192.168.4.5和192.168.2.5,兩臺(tái)Web服務(wù)器IP地址分別為192.168.2.100和192.168.2.200。客戶端測(cè)試主機(jī)IP地址為192.168.4.10。
步驟一:部署實(shí)施后端Web服務(wù)器
1)部署后端Web1服務(wù)器
后端Web服務(wù)器可以簡(jiǎn)單使用yum方式安裝httpd實(shí)現(xiàn)Web服務(wù),為了可以看出后端服務(wù)器的不同,可以將兩臺(tái)后端服務(wù)器的首頁(yè)文檔內(nèi)容設(shè)置為不同的內(nèi)容。
1、[root@web1?~]# yum?-y install httpd
2、[root@web1?~]# echo "192.168.2.100"?>?/var/www/html/index.html
3、[root@web1?~]# systemctl restart httpd
4、[root@web1?~]# firewall-cmd?--set-default-zone=trusted
5、[root@web1?~]# setenforce?0
2)部署后端Web2服務(wù)器
1、[root@web2?~]# yum?-y install httpd[root@web2?~]# echo "192.168.2.200"?>?/var/www/html/index.html
2、[root@web2?~]# systemctl restart httpd
3、[root@web2?~]# firewall-cmd?--set-default-zone=trusted
4、[root@web2?~]# setenforce?0
步驟二:配置Nginx服務(wù)器,添加服務(wù)器池,實(shí)現(xiàn)反向代理功能
1、改/usr/local/nginx/conf/nginx.conf
配置文件
2、[root@proxy?~]#vim?/usr/
local/nginx/conf/nginx.conf
3、....
4、http?{/
5、....
6、#使用upstream定義后端服務(wù)器集群,集群名稱任意(如webserver)/
7、#使用server定義集群中的具體服務(wù)器和端口
8、upstream webserver?{/
9、server?192.168.2.100:80;
10、server?192.168.2.200:80;
11、}
12、..../
13、server?{
14、listen?80;/
15、server_name localhost;
16、location?/{
17、#通過(guò)proxy_pass將用戶的請(qǐng)求轉(zhuǎn)發(fā)給webserver集群/
18、proxy_pass http://webserver;
19、}/
20、}
#使用upstream定義后端服務(wù)器集群,集群名稱任意(如webserver)
#使用server定義集群中的具體服務(wù)器和端口
重啟nginx服務(wù)
[root@proxy?~]# /usr/local/nginx/
sbin/nginx?-s reload
#請(qǐng)先確保nginx是啟動(dòng)狀態(tài),否則運(yùn)行該命令會(huì)報(bào)錯(cuò)
客戶端使用瀏覽器訪問(wèn)代理服務(wù)器測(cè)試輪詢效果
[root@client?~]# curl ref="http:
//192.168.4.5/">http://192.168.4.5?//使用該命令多次訪問(wèn)查看效果
[root@client?~]# curl?
http://192.168.4.5 //
使用該命令多次訪問(wèn)查看效果
步驟三:配置upstream服務(wù)器集群池屬性
weight可以設(shè)置后臺(tái)服務(wù)器的權(quán)重,
max_fails可以設(shè)置后臺(tái)服務(wù)器的失敗次數(shù),
fail_timeout可以設(shè)置后臺(tái)服務(wù)器的失敗超時(shí)時(shí)間。
down標(biāo)記服務(wù)器已關(guān)機(jī),不參與集群調(diào)度
1、[root@proxy?~]#vim?/usr/
local/nginx/conf/nginx.conf
2、....
3、http?{/
4、....
5、upstream webserver?{/
6、server?192.168.2.100?weight=
1?max_fails=1?fail_timeout=30;
7、server?192.168.2.200?weight=2
?max_fails=2?fail_timeout=30;
8、server?192.168.2.101?down;
9、}/
10、#weight設(shè)置服務(wù)器權(quán)重值,默認(rèn)值為1
11、#max_fails設(shè)置最大失敗次數(shù)/
12、#fail_timeout設(shè)置失敗超時(shí)時(shí)間,單位為秒
13、#down標(biāo)記服務(wù)器已關(guān)機(jī),不參與集群調(diào)度/
14、....
15、server?{/
16、listen?80;
17、server_name localhost;
18、location?/{
19、proxy_pass http://webserver;
20}
21、}
重啟nginx服務(wù)
[root@proxy?~]# /usr/local/nginx/
sbin/nginx?-s reload
關(guān)閉一臺(tái)后端服務(wù)器(如web1)
[root@web1?~]# systemctl stop httpd
客戶端使用瀏覽器訪問(wèn)代理服務(wù)器測(cè)試輪詢效果
[root@client?~]# curl http://192.168.4.5
再次啟動(dòng)后端服務(wù)器的httpd(如web1)
[root@web1?~]# systemctl start httpd
客戶端再次使用瀏覽器訪問(wèn)代理服務(wù)器測(cè)試輪詢效果
[root@client?~]# curl http://192.168.4.5
#Nginx#
為方便五湖四海的Linux愛(ài)好者共同
學(xué)(吹)習(xí)(牛)討(打)論(趣)
熱烈歡迎大家加入專屬Q(mào)Q群
群內(nèi)定時(shí)上傳資料還有老師全天答疑
入群即可免費(fèi)獲得
1、必備工具源碼包
2、內(nèi)部精選電子書
3、運(yùn)維資料大禮包
欲知更多福利,歡迎你的加入
點(diǎn)擊“閱讀原文”
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的nginx 电子书_Nginx最详细的反向代理配置步骤,拿去不谢的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: iOS 15.1 正式版值得升级吗更新内
- 下一篇: 如何在 iPhone 13 Pro 系列