日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

浅谈nginx反向代理问题

發(fā)布時(shí)間:2024/1/1 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 浅谈nginx反向代理问题 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

對(duì)正向代理和反向代理的概念理解:正向代理,我是這樣認(rèn)為的,正向代理就好比我們想上網(wǎng),然后要通過(guò)這個(gè)代理服務(wù)器我們才能訪問(wèn)特定的網(wǎng)絡(luò),正向代理的服務(wù)器是和我們的局域網(wǎng)即客戶端在一起的;反向代理,我們要訪問(wèn)服務(wù)器,然后代理服務(wù)器將我們的請(qǐng)求發(fā)給在他結(jié)點(diǎn)下面的服務(wù)器,然后代理服務(wù)器將收集到的信息發(fā)給我們,所以我們感覺(jué)代理服務(wù)器就是自己的服務(wù)器一樣,其中反向代理服務(wù)器是和對(duì)端服務(wù)器部署在一起的。


最近在研究nginx如何做反向代理并且負(fù)載均衡的問(wèn)題,其中小白我很糾結(jié)于nginx配置文件上面的root目錄到底怎么配置,因?yàn)槲蚁肽M的是nginx單獨(dú)裝在一臺(tái)服務(wù)器,然后通過(guò)nginx代理下面的服務(wù)器結(jié)點(diǎn),所以覺(jué)得這種情況Nginx不用配置本地目錄root,后來(lái)做實(shí)驗(yàn)發(fā)覺(jué)我的猜想是對(duì)的,下面說(shuō)說(shuō)我進(jìn)行的實(shí)驗(yàn):

首先說(shuō)明我的實(shí)驗(yàn)環(huán)境Centos6.5虛擬機(jī),地址是192.168.10.132,然后我的局域網(wǎng)里面有兩個(gè)外網(wǎng)的服務(wù)器都是210開(kāi)頭的,如下圖,你的兩臺(tái)210服務(wù)器必須都搭建了相同的網(wǎng)站,并且與上面的192.168.10.132能互相訪問(wèn),這里在192.168.10.132和210服務(wù)器之間是隔著防火墻設(shè)備的,在拓?fù)鋱D中忽略了中間設(shè)備

???????????????????????????????????? ?

1安裝nginx,這個(gè)網(wǎng)上很多教程,這里就不說(shuō)了,我是主要參考菜鳥(niǎo)教程里面的linux?nginx安裝以及配置,大家如果想安裝和配置的話可以去上面看看教程。

2修改nginx.conf文件(重點(diǎn)),打開(kāi)Nginx安裝目錄下的nginx.conf文件,因?yàn)槲业膎ginx安裝在/usr/local/nginx下面的,所以就用命令vi /usr/local/nginx/conf/nginx.conf打開(kāi)

???????????????

我按照上圖修改了上面配置文件的內(nèi)容,畫紅色的是我修改的內(nèi)容,我在http{}里面加了一個(gè)upstream負(fù)載均衡器myserver,設(shè)置了weight權(quán)值,weight越大被訪問(wèn)到的幾率越高,同時(shí)也起到了反向代理這兩臺(tái)210的服務(wù)器的作用,在server下面將nginx默認(rèn)的本地目錄root注釋掉,加了一個(gè)Location模塊,起到了負(fù)載調(diào)度的作用,proxy_pass是負(fù)載均衡組,要和上面的upstream名字相同都為myserver,下面的proxy_next_upstream定義了故障轉(zhuǎn)移策略,如果發(fā)生502,503等錯(cuò)誤,會(huì)將請(qǐng)求轉(zhuǎn)發(fā)到另外一臺(tái)服務(wù)器,include包含進(jìn)proxy.conf,這個(gè)文件是安裝nginx默認(rèn)存在的,與nginx.conf在同一目錄下

注意:如果是nginx不是用于負(fù)載均衡,只是用作分發(fā)的作用的話,上述就不需要添加upstream模塊,只需要添加不同虛擬主機(jī)的server模塊,然后在里面添加不同的server_name 和proxy_pass(這里proxy_pass是對(duì)應(yīng)主機(jī)的URL入口,如http://127.0.0.1:8080或者h(yuǎn)ttp://127.0.0.1:8888),也可以把不同虛擬主機(jī)寫成不同的配置文件(如www_baidu_com.conf和www_google_com.conf),然后在配置文件里面添加server模塊并放到一個(gè)文件夾下,接著在nginx_conf中把上面配置文件include進(jìn)去

3/usr/local/nginx/sbin/nginx -s reload重新加載配置文件

輸入http://192.168.10.132測(cè)試正確顯示權(quán)值大的服務(wù)器,大功告成!


我在測(cè)試的時(shí)候遇到了一些問(wèn)題,有些網(wǎng)站的圖片和格式都無(wú)法正常顯示,所以在nginx.conf文件里面的幾個(gè)location模塊加上了如下配置

?????????????????????

分別在css模塊和gif圖片模塊中加入了proxy_pass http://myserver;再/usr/local/nginx/bin/nginx -s reload重新加載一下配置文件就可以正常訪問(wèn)了

還有一點(diǎn),我用的ie瀏覽器測(cè)試,要清理一下ie瀏覽器的緩存,不然的話你會(huì)發(fā)覺(jué)怎么修改weight的值也是在訪問(wèn)同一臺(tái)服務(wù)器。




 

總結(jié)

以上是生活随笔為你收集整理的浅谈nginx反向代理问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。