首頁 > 運維 > Nginx > nginx之反向代理怎麼配置

nginx之反向代理怎麼配置

WBOY
發布: 2023-05-14 20:40:10
轉載
5300 人瀏覽過

nginx之反向代理

在設定nginx反向代理之間我們得先準備兩台測試伺服器,web1與web2。

1.安裝httpd

[root@web1 ~]# yum install -y httpd
[root@web2 ~]# yum install -y httpd
登入後複製

2.提供測試頁面

[root@web1 ~]# echo "<h1>web1.test.com</h1>" > /var/www/html/index.html
[root@web2 ~]# echo "<h1>web2.test.com</h1>" > /var/www/html/index.html
登入後複製

3.啟動httpd服務

[root@web1 ~]# service httpd start 
正在启动 httpd:                      [确定]
[root@web2 ~]# service httpd start 
正在启动 httpd:                      [确定]
登入後複製

4.測試一下

nginx之反向代理怎麼配置

nginx之反向代理怎麼配置

5.簡單說一下,正向代理與反向代理

(1).正向代理的概念

正向代理,也就是傳說中的代理,他的工作原理就像一個跳板,簡單的說,我是一個用戶,我訪問不了某網站,但是我能訪問一個代理伺服器,這個代理伺服器呢,他能訪問那個我不能訪問的網站,於是我先連上代理伺服器,告訴他我需要那個無法訪問網站的內容,代理伺服器去取回來,然後返回給我。從網站的角度,只在代理伺服器來取內容的時候有一次記錄,有時候並不知道是用戶的請求,也隱藏了用戶的資料,這取決於代理告不告訴網站。

 結論就是,正向代理程式是位於客戶端和原始伺服器(origin server)之間的伺服器,為了從原始伺服器取得內容,客戶端向代理程式傳送一個請求並指定目標(原始伺服器),然後代理程式向原始伺服器轉交請求並將獲得的內容傳回給客戶端。客戶端必須要進行一些特別的設定才能使用正向代理。

(2).反向代理的概念

繼續範例:    

範例使用者造訪http://www.test. com/readme,但www.test.com上並不存在readme頁面,他是偷偷從另外一台伺服器上取回來,然後作為自己的內容返回用戶,但用戶並不知情。這裡所提到的 www.test.com 這個網域對應的伺服器就設定了反向代理功能。

結論就是,反向代理正好相反,對於客戶端而言它就像是原始伺服器,並且客戶端不需要進行任何特別的設定。客戶端向反向代理的命名空間(name-space)中的內容發送普通請求,接著反向代理將判斷向何處(原始伺服器)轉交請求,並將獲得的內容傳回給客戶端,就像這些內容原本就是它自己的一樣。

(3).兩者差異

從用途來講:

##正向代理程式的典型用途是為在防火牆內的區域網路用戶端提供存取internet的途徑。正向代理還可以使用緩衝特性減少網路使用率。反向代理的典型用途是將防火牆後面的伺服器提供給internet使用者存取。反向代理還可以為後端的多台伺服器提供負載平衡,或為後端較慢的伺服器提供緩衝服務。另外,反向代理還可以啟用進階url策略和管理技術,從而使處於不同web伺服器系統的web頁面同時存在於同一個url空間下。

從安全性來講:

正向代理程式允許客戶端透過它存取任意網站並且隱藏客戶端自身,因此你必須採取安全措施以確保僅為經過授權的客戶端提供服務。反向代理對外都是透明的,訪客並不知道自己造訪的是一個代理。


以上是nginx之反向代理怎麼配置的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板