欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Nginx Proxy 代理測試的實現(xiàn)

 更新時間:2025年02月19日 10:15:10   作者:ZZDICT  
本文主要介紹了Nginx Proxy 代理測試的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

一. 實驗準備

關(guān)閉防火墻和selinux,準備三臺同一網(wǎng)段的虛擬機

localhostRoucky_linux9.4192.168.226.20
localhostRoucky_linux9.4192.168.226.21
localhostRoucky_linux9.4192.168.226.22

三臺服務(wù)器都配置官方的nginx源并下載和啟動

sudo tee /etc/yum.repos.d/nginx.repo << 'EOF'
[nginx-stable]
name=nginx stable repo
baseurl=https://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key

[nginx-mainline]
name=nginx mainline repo
baseurl=https://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
EOF
yum install -y nginx
systemctl enable --now nginx

此時三臺服務(wù)器都可以正常開啟

二. 配置反向代理

正向代理和反向代理對比示意圖

兩者的區(qū)別在于代理的對象不一樣:

正向代理中代理的對象是客戶端,proxy和client同屬一個LAN,對server透明;

反向代理中代理的對象是服務(wù)端,proxy和server同屬一個LAN,對client透明。

現(xiàn)讓192.168.226.20做客戶端 ,192.168.226.21做代理服務(wù)器

對192.168.226.20做如下配置: 

 編輯配置文件/etc/nginx/conf.d/default.conf

vim /etc/nginx/conf.d/default.conf

#修改配置文件為如下:
server {
    listen       80;
    server_name  localhost;

    location / {
        proxy_pass http://192.168.226.21;  # 設(shè)置代理目標的地址
        proxy_redirect default;  # 開啟默認的代理重定向
        proxy_set_header Host $http_host;  # 設(shè)置代理請求中的 Host 頭部
        proxy_set_header X-Real-IP $remote_addr;  # 設(shè)置真實客戶端 IP 地址的頭部
        proxy_set_header REMOTE-HOST $remote_addr;  # 設(shè)置遠程主機的頭部,此處與 X-Real-IP 重復(fù)了
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  # 設(shè)置經(jīng)過的代理 IP 地址的頭部

        proxy_connect_timeout 30;  # 設(shè)置與后端服務(wù)器建立連接的超時時間為30秒
        proxy_send_timeout 60;  # 設(shè)置向后端服務(wù)器發(fā)送請求的超時時間為60秒
        proxy_read_timeout 60;  # 設(shè)置從后端服務(wù)器讀取響應(yīng)的超時時間為60秒

        proxy_buffering on;  # 開啟代理緩沖
        proxy_buffer_size 32k;  # 設(shè)置單個緩沖區(qū)的大小為32KB
        proxy_buffers 4 128k;  # 設(shè)置用于存儲響應(yīng)數(shù)據(jù)的緩沖區(qū)的數(shù)量和大小
        proxy_busy_buffers_size 256k;  # 設(shè)置活躍緩沖區(qū)的最大大小為256KB
        proxy_max_temp_file_size 256k;  # 設(shè)置臨時文件的最大大小為256KB
    }

    error_page   500 502 503 504  /50x.html;  # 定義處理5xx錯誤的頁面
    location = /50x.html {
        root   /usr/share/nginx/html;  # 指定50x錯誤頁面的根目錄
    }
}

測試Nginx配置文件

nginx -t

重新加載Nginx配置

nginx -s reload

現(xiàn)在在代理服務(wù)器192.168.226.21上查看Nginx訪問日志

tail -f /var/log/nginx/access.log

整體解釋

日志條目顯示了來自IP地址 192.168.226.20 的客戶端在2024年6月18日19:11:57(+0800時區(qū))發(fā)起的多個HTTP請求。這些請求都是對服務(wù)器根路徑 / 使用HTTP/1.0方法發(fā)起的 GET 請求。服務(wù)器返回的HTTP狀態(tài)碼是 304,表示資源未修改,客戶端可以使用緩存的版本,因此響應(yīng)大小為 0 字節(jié)??蛻舳说挠脩舸碜址砻魉褂玫氖荂hrome瀏覽器。X-Forwarded-For 字段顯示客戶端的真實IP地址為 192.168.226.1。

簡單講記錄了來自192.168.226.20的客戶端的IP的記錄,但是真實請求的IP是192.168.226.1 

三. 配置二層代理

在之前的實驗里,我用windows客戶端訪問192.168.226.20,對192.168.226.20作量一層代理,一層代理服務(wù)器為192.168.226.21,現(xiàn)在我要講192.168.226.21的下一層代理設(shè)置為192.168.226.22,即實現(xiàn)二層代理。

對192.168.226.22編輯配置文件

vim /etc/nginx/conf.d/default.conf

#修改配置文件為如下:
server {
    listen       80;
    server_name  localhost;

    location / {
        proxy_pass http://192.168.226.22;
        proxy_redirect default;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_connect_timeout 30;
        proxy_send_timeout 60;
        proxy_read_timeout 60;

        proxy_buffering on;
        proxy_buffer_size 32k;
        proxy_buffers 4 128k;
        proxy_busy_buffers_size 256k;
        proxy_max_temp_file_size 256k;
    }
    error_page   500 502 503 504  /50x.html;
        location = /50x.html {
        root   /usr/share/nginx/html;
    }
}

 測試Nginx配置文件

nginx -t

重新加載Nginx配置

nginx -s reload

現(xiàn)在在代理服務(wù)器192.168.226.22上查看Nginx訪問日志 

tail -f /var/log/nginx/access.log

查看192.168.226.21的日志:

查看192.168.226.20的日志:

修改默認發(fā)布頁面用來辨別

#對192.168.226.20修改
echo "webserver1" > /usr/share/nginx/html/index.html
systemctl restart nginx


#對192.168.226.21修改
echo "webserver2" > /usr/share/nginx/html/index.html
systemctl restart nginx


#對192.168.226.22修改
echo "webserver3" > /usr/share/nginx/html/index.html
systemctl restart nginx

瀏覽器刷新頁面訪問 

實際上訪問192.168.226.20是192.168.226.22提供的服務(wù)。 

解釋流程

  • Windows客戶端 發(fā)送請求到 http://192.168.226.20/。
  • Nginx 1 (在192.168.226.21) 接收到請求,根據(jù)配置將其轉(zhuǎn)發(fā)到目標服務(wù)器 192.168.226.22。
  • Nginx 2 (在192.168.226.22) 接收從Nginx 1轉(zhuǎn)發(fā)的請求,并根據(jù)其配置將請求轉(zhuǎn)發(fā)到最終的應(yīng)用服務(wù)器,即也是192.168.226.22。

同理,三層nginx的代理也是往上疊加。 

到此這篇關(guān)于Nginx Proxy 代理測試的實現(xiàn)的文章就介紹到這了,更多相關(guān)Nginx Proxy 代理測試內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 深入理解nginx如何實現(xiàn)高性能和可擴展性

    深入理解nginx如何實現(xiàn)高性能和可擴展性

    這篇文章主要介紹了深入理解nginx如何實現(xiàn)高性能和可擴展性,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-05-05
  • Nginx多層代理配置方法

    Nginx多層代理配置方法

    這篇文章主要介紹了Nginx多層代理配置方法,此篇文章只給大家介紹nginx的多級代理配置代碼,需要的朋友可以參考下
    2017-08-08
  • Nginx內(nèi)網(wǎng)單機反向代理的實現(xiàn)

    Nginx內(nèi)網(wǎng)單機反向代理的實現(xiàn)

    本文主要介紹了Nginx內(nèi)網(wǎng)單機反向代理的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 文件上傳到服務(wù)器文件名中文亂碼問題

    文件上傳到服務(wù)器文件名中文亂碼問題

    上傳附件到部署服務(wù)器,但是上傳到服務(wù)器出現(xiàn)文件名中文亂碼,中文變成(?)問號,而且在本地測試是正常的,通過打印日志發(fā)現(xiàn),下面fileName亂碼,本文給大家講解文件上傳到服務(wù)器文件名中文亂碼問題解決方案,感興趣的朋友一起看看吧
    2024-02-02
  • nginx實現(xiàn)tomcat動靜分離詳解

    nginx實現(xiàn)tomcat動靜分離詳解

    本篇文章主要介紹了nginx實現(xiàn)tomcat動靜分離詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • nginx搭建圖片服務(wù)器的過程詳解(root和alias的區(qū)別)

    nginx搭建圖片服務(wù)器的過程詳解(root和alias的區(qū)別)

    這篇文章主要介紹了nginx搭建圖片服務(wù)器(root和alias的區(qū)別)的過程,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • Linux查看nginx安裝目錄和配置文件路徑的實現(xiàn)

    Linux查看nginx安裝目錄和配置文件路徑的實現(xiàn)

    本文主要介紹了Linux查看nginx安裝目錄和配置文件路徑的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01
  • Nginx timeout超時配置詳解

    Nginx timeout超時配置詳解

    這篇文章主要介紹了Nginx timeout超時配置詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • Nginx反向代理學(xué)習(xí)實例教程

    Nginx反向代理學(xué)習(xí)實例教程

    nginx作為web服務(wù)器一個重要的功能就是反向代理,當然你也可以使用nginx配置正向代理,這篇文章主要給大家介紹了關(guān)于Nginx反向代理的相關(guān)資料,需要的朋友可以參考下
    2021-10-10
  • nginx配置客戶端保存cookie的實現(xiàn)

    nginx配置客戶端保存cookie的實現(xiàn)

    本文主要介紹了nginx配置客戶端保存cookie的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03

最新評論