我们米扑科技的业务遍布全球,有时国外客户无法访问我们国内的服务,这就需要我们在国外服务器上搭建一个代理转发服务,用户请求国外服务器的域名,然后代理转发到国内,处理完请求后返回结果给国外客户。Nginx不仅可以实现负载均衡,还可以进行反向代理转发,非常适合我们的使用场景。因此米扑科技使用Nginx来代理转发请求实例。Nginx使用代理转发请求实例nginx作为目前最流行的web服务器之一,可以非常方便的实现反向代理。Nginx反向代理官方文档:NGINXREVERSEPROXY当一台主机上部署了多个不同的web服务器,需要能够同时在80和443端口访问这些web服务器时,可以使用nginx的反向代理功能,使用nginx监听80端口的所有请求,转发到443端口,然后根据转发规则转发到国内对应的web服务器。示例:proxy.mimvp.com域名在阿里云注册,国内部署的北京阿里云服务器proxy.mimgu.cn域名注册在腾讯云,新加坡腾讯云服务器部署在国外(国外域名)名称不需要注册)1.国内北京阿里云服务器vimmimvp_proxy.confserver{listen80; server_nameproxy.mimvp.com;#域名可以有多个,用空格隔开 rootwww/mimvp_proxy;重写^(.*)$https://$host$1永久; location/{ rootwww/mimvp_proxy; indexindex.phpindex.htmlindex.htm; } location~\.php${ rootwww/mimvp_proxy; fastcgi_pass127.0.0.1:9000; fastcgi_indexindex.php; fastcgi_paramSCRIPT_FILENAME/scripts$fastcgi_script_name; 包含fastcgi.conf; }位置~*^/(images|img|javascript|js|css|blog|flash|media|static)/{rootwww/mimvp_proxy;30天后到期;}location~*^/(robots\.txt){rootwww/mimvp_proxy;365天后到期;}location~*^/favicon\.ico{rootwww/mimvp_proxy;365天后到期;}location~*^/img/logo\.png{rootwww/mimvp_proxy;365天后到期;}location~/\.ht{全部拒绝;}}服务器{听443sslhttp2;服务器名称proxy.mimvp.com;#域名称可以有多个,用空间隔开rootwww/mimvp_proxy;SSL开启;ssl_certificateproxy.mimvp.com.crt;ssl_certificate_keyproxy.mimvp.com.key;ssl_session_cache共享:SSL:1m;ssl_session_timeout10m;ssl_protocolsTLSv1TLSv1.1TLSv1.2;ssl_ciphersECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;秒sl_prefer_server_ciphers开启; location/{rootwww/mimvp_proxy; indexindex.phpindex.htmlindex.htm; } location~\.php${ rootwww/mimvp_proxy; fastcgi_pass127.0.0.1:9000; fastcgi_indexindex.php; fastcgi_paramSCRIPT_FILENAME/scripts$fastcgi_script_name; 包含fastcgi.conf; }位置~*^/(images|img|javascript|js|css|blog|flash|media|static)/{rootwww/mimvp_proxy;30天后到期;}location~*^/(robots\.txt){rootwww/mimvp_proxy;365天后到期;}location~*^/favicon\.ico{rootwww/mimvp_proxy;365天后到期;}location~*^/img/logo\.png{rootwww/mimvp_proxy;365天后到期;}location~/\.ht{全部拒绝;}}2。国外新加坡腾讯云服务器vimmimvp_proxy2.confserver{listen80; server_nameproxy.mimgu.cn; rootwww/mimvp_proxy;重写^(.*)$https://$host$1永久;##所有请求都强制重定向到https}server{listen443sslhttp2;server_nameproxy.mimgu.cn;根www/mimvp_proxy;SSL开启;ssl_certificate代理.mimgu.cn.crt;ssl_certificate_keyproxy.mimgu.cn.key;秒ssl_session_cache共享:SSL:1m;ssl_session_timeout10m;ssl_protocolsTLSv1TLSv1.1TLSv1.2;ssl_ciphersECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;ssl_prefer_server_ciphers开启;位置/{proxy_passhttps://proxy.mimvp.com;##所有请求强制跳转到国内服务器https://proxy.mimvp.com } location~\.php${ proxy_passhttps://proxy.mimvp.com; }location~*^/(images|img|javascript|js|css|blog|flash|media|static)/{proxy_passhttps://proxy.mimvp.com;##css、js、img等都必须转发,否则布局可能会乱}location~*^/(robots\.txt){proxy_passhttps://proxy.mimvp.com;}location~*^/favicon\.ico{proxy_passhttps://proxy.mimvp.com;}location~*^/img/logo\.png{proxy_passhttps://proxy.mimvp.com;}location~/\.ht{全部拒绝;}}
