centos7 搭建 nginx web服務 反代理

jonlan發表於2021-05-27

Nginx("engine x")是一款是由俄羅斯的程式設計師Igor Sysoev所開發高效能的 Web和 反向代理 伺服器,也是一個 IMAP/POP3/SMTP 代理伺服器。
在高連線併發的情況下,Nginx是Apache伺服器不錯的替代品。

一,什麼是反向代理:

反向代理伺服器架設在伺服器端,通過緩衝經常被請求的頁面來緩解伺服器的工作量,將客戶機請求轉發給內部網路上的目標伺服器;並將從伺服器上得到的結果返回給Internet上請求連線的客戶端,此時代理伺服器與目標主機一起對外表現為一個伺服器。

二,反向代理的主要作用:

目前web網站使用反向代理,除了可以防止外網對內網伺服器的惡性攻擊、快取以減少伺服器的壓力和訪問安全控制之外,

還可以進行負載均衡,將使用者請求分配給多個伺服器。

三,配置反向代理(Nginx):

Nginx作為近年來較火的反向代理伺服器,安裝在目的主機端,主要用於轉發客戶機請求,後臺有多個http伺服器提供服務,

nginx的功能就是把請求轉發給後面的伺服器,決定哪臺目標主機來處理當前請求。

準備環境:

   配置Nginx需要一系列的編輯環境,所以需要先下載好環境:

   # yum install gcc zlib zlib-devel openssl openssl-devel -y

下載好環境後就可以下載nginx安裝包:

   (1)直接下載.tar.gz安裝包,地址:https://nginx.org/en/download.html 

   (2)使用wget命令下載(推薦)

    # wget -c https://nginx.org/download/nginx-1.12.2.tar.gz

下載好安裝包後我們來進行nginx的安裝:

    (1)解壓

    # tar -zxvf nginx-1.12.2.tar.gz

    # cd nginx-1.12.2

    (2)配置(在nginx解壓目錄中進行)

    # ./configure                        //nginx預設安裝位置是在/usr/local/nginx下

           (3)編譯安裝

           # make

           # make install 

4.啟動、停止nginx:

            進入預設目錄下的/sbin目錄

            # cd /usr/local/nginx/sbin/

            # ./nginx 

            # ./nginx -s stop

            # ./nginx -s quit

            # ./nginx -s reload

            # ./nginx -s quit:此方式停止步驟是待nginx程式處理任務完畢進行停止。

            #./nginx -s stop:此方式相當於先查出nginx程式id再使用kill命令強制殺掉程式。

    查詢nginx程式:



            # ps -ef|grep nginx

5.安裝過程結束後可以通過瀏覽器檢查安裝是否成功,在瀏覽器中輸入你的IP地址,顯示如下畫面即安裝成功:

6.接下來配置反向代理:
編輯/usr/local/nginx/nginx.conf檔案

在http{}部分新增如下內容:
server {

        listen 80;        #nginx伺服器的代理埠
        server_name localhost alry.cn;    

location / {

        proxy_pass http://localhost:5000/;
	                proxy_set_header Host $http_host;
        proxy_set_header Cookie $http_cookie;
        proxy_set_header Remote_Addr $remote_addr;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real-IP $remote_addr;
        }

}

7.重啟Nginx:

./nginx -s reload

8.在瀏覽器中訪問你的域名,即可訪問網站。
9.更多文章請關注我的部落格首頁

相關文章