nginx如何配置代理轉發

nginx如何配置代理轉發

nginx是個厲害的服務器,可以配置多個服務器,一個server就是一個服務器

server {       listen       80;       server_name  *.yourdomain.com;     .... }

代理轉發是在server下面的location進行配置

server {    // 服務器配置    location  / {    // ...... 代理配置    } }

常見的Nginx代理配置

upstream my_server {                                                              server 10.0.0.2:8080;                                                     keepalive 2000; } server {     listen       80;                                                              server_name  10.0.0.1;                                                    client_max_body_size 1024M;      location /my/ {         proxy_pass http://my_server/;         proxy_set_header Host $host:$server_port;     } }

通過該配置,訪問nginx地址http://10.0.0.1:80/my的請求會被轉發到my_server服務地址http://10.0.0.2:8080/

需要注意的是,如果按照如下配置:

upstream my_server {                                                              server 10.0.0.2:8080;                                                     keepalive 2000; } server {     listen       80;                                                              server_name  10.0.0.1;                                                    client_max_body_size 1024M;      location /my/ {         proxy_pass http://my_server;         proxy_set_header Host $host:$server_port;     } }

那么,訪問nginx地址http://10.0.0.1:80/my的請求會被轉發到my_server服務地址http://10.0.0.2:8080/my。這是因為proxy_pass參數中如果不包含url的路徑,則會將location的pattern識別的路徑作為絕對路徑。

更多Nginx相關技術文章,請訪問Nginx使用教程欄目進行學習!?

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享