Nginx之路--配置正向代理、反向代理

我愛大可樂發表於2020-07-21

Nginx設定正向代理、反向代理


公司有兩臺空閒的伺服器,和老大說了一聲後,就想利用一下這臺空閒的伺服器學習一下Nginx配置,兩臺伺服器只有一個IP地址,A伺服器有公網IP,B伺服器沒有公網IP,同時兩個伺服器私有地址在同一IP段(A–192.168.0.10,B–192.168.0.11)。想讓B伺服器可以訪問公網,同時區域網外的使用者可以訪問B伺服器的資源。有遺漏或者錯誤的地方歡迎指正

1.Nginx正向代理

在Nginx伺服器(A)上的配置如下,配置完記得重啟

server{
    listen 9999;//監聽9999埠
    server_name _;
    location /{
        resolver 8.8.8.8 114.114.114.114;//DNS自選
        proxy_pass $scheme://$host$request_uri;
    }
}

在B伺服器上的配置環境變數,新增代理

#export https_proxy=正向代理IP:export https_proxy=192.168.0.10:9999

2.配置反向代理

server{
    listen    90;//可以是其他埠
    server_name xxxx.com a.xxx.com;//域名
    location /{
        proxy_set_header Host $host;
         proxy_pass    http://192.168.0.11:8090;
    }
}

3.中間遇到的問題

配置完反向代理後,訪問靜態資源報404,解決方案

 location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${
     expires      30d;
    proxy_pass    http://192.168.0.11:8090;
    error_log off;
    access_log /dev/null;
 }

 location ~ .*\.(js|css)?${
     expires      12h;
     proxy_pass    http://192.168.0.11:8090;
     error_log off;
     access_log /dev/null; 
 }

4.結語

剛剛接觸Nginx,還有許多不知道,還有需要有待了解,上述配置也只是一下簡單的配置,Nginx之路還有很長,慢慢來

本作品採用《CC 協議》,轉載必須註明作者和本文連結
我愛大可樂

相關文章