<progress id="nc499"><pre id="nc499"><rt id="nc499"></rt></pre></progress>

<dd id="nc499"><track id="nc499"><dl id="nc499"></dl></track></dd>
  • <nav id="nc499"></nav>

    <span id="nc499"></span>

    nginx反向代理配置

    來源:nginx 2021-04-06 21:16:09
    nginx作為web服務器一個重要的功能就是反向代理。

    當然你也可以使用nginx配置正向代理,本是介紹如何配置nginx的反向代理。

    nginx反向代理的指令不需要新增額外的模塊,默認自帶proxy_pass指令,只需要修改配置文件就可以實現反向代理。
    nginx反向代理配置?

    什么是反向代理服務器

    反向代理功能是nginx的三大主要功能之一(靜態web服務器、反向代理、負載均衡)。nginx一般同時做為靜態web服務器和反向代理服務器,做為web服務器訪問靜態文件圖片、css、js、html等文件,做為反向代理服務器把請求發給后端業務處理服務,如果有多個后端處理節點,會配置負載均衡功能。

    反向代理服務器是一種代理服務器,用于管理從外部網絡到內部網絡的連接或任何特定請求。它保護、路由和管理從外部網絡到內部網絡、Web服務器或專用網絡的流量。


    外網客戶機:我們平時打開瀏覽器輸入網址訪問www.nginx.cn的場景中,我們的筆記本就可以理解為一個外網客戶機。

    nginx反向代理服務:瀏覽器輸入網址并回車后,會發起一個http請求給nginx(反向代理服務器),這個請求如果是訪問靜態文件,那么nginx作為web服務器直接返回請求的內容,如果是訪問的后臺服務邏輯,那么nginx把請求轉發給后端的服務處理。

    內網web服務:后端的服務可以是很多種類型,LNMP環境下的php-fpm進程,Java環境下的tomcat、jetty等容器,通過程序邏輯處理http請求,生成html頁面或者json串返回給客戶端。對于小型應用,后端服務可以和nginx部署在同一臺機器上。

    反向代理服務器的好處

    nginx反向代理重要的作用是配合upstream實現負載均衡。

    同時增加安全性,客戶端不能直接訪問后端服務,多了一個中間的屏障。

    提升性能,通過異步非阻塞的方式把請求傳給后端,提升了并發處理能力。

    也可利用緩存、壓縮響應提高響應速度。

    nginx如何配置反向代理

    nginx反向代理不需要編譯額外的模塊,默認自帶proxy_pass和fastcgi_pass指令,通過在location配置塊中增加指令就可以實現反向代理功能。

    以www.nginx.cn為例,這個網站用的wordpress程序,wordpress是php語言編寫,那么需要通過php運行環境,可以選擇apache的php擴展或者php-fpm環境,主流的選擇是php-fpm,php-fpm設置為Unix socket模式或者ip:端口模式 。

    Unix socket后端服務配置

    server {
        listen 80;
        server_name www.nginx.cn nginx.cn;
    
        location /app {
           fastcgi_pass  unix:/tmp/php-cgi.sock;
        }
    }

    ip端口后端服務配置

    server {
        listen 80;
        server_name www.nginx.cn nginx.cn;
    
        location /app {
           proxy_pass http://127.0.0.1:8080;
        }
    }

    proxy_pass和fastcgi_pass區別

    對于上面介紹的兩種情況下proxy_pass和fastcgi_pass可以互相替代使用,不過兩者還是有區別的,從名字我們就可以看出來,fastcgi_pass是用來反向代理fastcgi協議,proxy_pass可以代理包括fastcgi協議在內的其它協議。

    例如鏡像一個網站,這種情況下就需要proxy_pass:

    location /{
        proxy_pass http://www.baidu.com;
    }


    原文出處:https://www.nginx.cn/927.html
    版權聲明:本文來源地址若非本站均為轉載,若侵害到您的權利,請及時聯系我們,我們會在第一時間進行處理。