什麼是Nginx、反向代理服務器?正向代理服務器又是什麼?(圖解)

1、靜態HTTP服務器

首先,Nginx是一個HTTP服務器,可以將服務器上的靜態文件(如HTML、圖片)通過HTTP協議展現給客戶端。

配置:

  1. server {

  2. listen80; # 端口號

  3. location / {

  4. root /usr/share/nginx/html; # 靜態文件路徑

  5. }

  6. }

通過上面的配置,你可以通過域名加80端口訪問到服務器上的文件資源。

 

2、反向代理服務器

什麼是反向代理?

客戶端本來可以直接通過HTTP協議訪問某網站應用服務器,網站管理員可以在中間加上一個Nginx,客戶端請求Nginx,Nginx請求應用服務器,然後將結果返回給客戶端,此時Nginx就是反向代理服務器。nginx是配置在服務器上的。

配置:

  1. server {

  2. listen80;

  3. location / {

  4. proxy_pass http://192.168.20.1:8080; # 應用服務器HTTP地址

  5. }

  6. }

既然服務器可以直接HTTP訪問,爲什麼要在中間加上一個反向代理,因爲通過反向代理,客戶端的請求可以被服務器A或服務器B或其他服務器接收,由nginx服務器決定由哪個服務器處理。這樣可以處理更多併發請求,這就是所謂負載均衡。

總結:反向代理服務器Nginx是在服務器上的,客戶端只知道自己訪問的是服務器,不關心具體哪個服務器。(反向代理是在服務器端)

3、正向代理服務器

  什麼是正向代理?你可以猜一下,反向是在服務器,那正向代理是負責哪裏的呢?

  對,正向代理就是處理客戶端的請求的,他讓服務器不知道請求的源客戶端是哪個。典型的代表就是VPN(VPN是虛擬線路聯網,可以訪問國內國外網絡資源),通過VPN這正向代理服務器,我們就能訪問到國外網站而不被牆。

  因爲長城防火牆以及服務器端根本不知道源客戶端來自哪裏。他們把正向代理服務器當成客戶端了

總結:正向代理服務器用來代理客戶端,服務器端不能判斷真正源客戶端(正向代理是偏向客戶端)

補充:nginx默認路徑可能爲/usr/local/nginx/conf/或etc/nginx/conf.d/default.conf

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章