1. 程式人生 > >Nginx多層代理配置的運用

Nginx多層代理配置的運用

這篇文章主要介紹了Nginx多層代理配置方法,此篇文章只給大家介紹nginx的多級代理配置程式碼,需要的朋友可以參考下
此篇只說nginx的多級代理配置,不扯其他的.FTP

需求:hba.changyoufun.com-121.201.125.239(gd1)–hk1–co(alphaclash.ggdev.co) 廣東代理—>香港—>加拿大

由於idc機房在加拿大,所以經常會配些nginx多級反向代理到國內.(不做代理client就得翻牆,或者說是丟包很嚴重.)

下面的Nginx配置我只寫80的,443的忽略,簡化nginx的配置,引數也不一一列舉不然太多了.

gd1的反向代理配置:(就是一個反向代理)

cat hba.changyoufun.com.confserver{ listen 121.201.125.239:80; server_name hba.changyoufun.com; access_log /data/weblogs/hba.changyoufun.com.access.log main; index index.html index.php index.htm; location / { proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_redirect off; proxy_read_timeout 600; proxy_connect_timeout 600; proxy_pass

http://hba80; }}Upstream配置(代理的是hk1的內網ip): upstream hba80 { server 10.105.3.222:80; } upstream hba443 { server 10.105.3.222:443; }
hk1的反向代理配置:(也是一個nginx反向代理)

cat hba.changyoufun.com.confserver{ listen 10.105.3.222:80; server_name hba.changyoufun.com; access_log /data/weblogs/hba.changyoufun.com.access.log main; index index.html index.php index.htm; location / { proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_redirect off; proxy_read_timeout 600; proxy_connect_timeout 600; proxy_pass

http://hba80; }}
Upstream配置(代理的是alphaclash.ggdev.co域名的ip地址):

upstream hba80 { server 216.66.17.34:80; } upstream hba443 { server 216.66.17.34:443; }
co機房原先已經存在alphaclash.ggdev.co域名的配置,只需要copy一份alphaclash.ggdev.co的nginx配置,將域名替換為hba.changyoufun.com即可.

co的兩份nginx配置:

nginx和php的web版:

cat hba.changyoufun.com.confserver{ listen 216.66.17.34:80; server_name hba.changyoufun.com ; access_log /data/weblogs/hba.changyoufun.com.access.log main; index index.html index.php index.htm;root /product/clash/alpha/web/htdocs;location ~ ^/.*(do|php)$ { fastcgi_pass php_proxy; fastcgi_param SCRIPT_FILENAME d o c u m e n t r o o t document_root fastcgi_script_name; fastcgi_param PATH_INFO KaTeX parse error: Expected 'EOF', got '}' at position 57: …astcgi_params; }̲} cat alphaclas… { fastcgi_pass php_proxy; fastcgi_param SCRIPT_FILENAME d o c u m e n t r o o t document_root fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_script_name; include /etc/nginx/fastcgi_params; }}
原文連結:http://www.iis7.com/a/nr/282714.html