众所周知,国内主机需要域名有备案号,如果不想备案的话,只能选用海外主机。但是,海外主机,比如香港主机带宽贵,同样的配置,海外主机比国内主机会贵不少,尤其是服务器配置和带宽要求比较高的话,选用海外主机会贵不少。
这时候咱们可以利用centos+nginx来做反向代理,来解决海外主机贵的问题,这样以达到价格适中,但访问速度又十分理想。
下面来讲下实现原理以及操作方法:
先准备好两台主机,一台是香港的,配置要求很低,只是利用它来做反向代理,真正访问的时候主要走国内主机的带宽,比如选用http://www.ywzt.org/vps-knowledge/50.asp套餐一,月付50¥,年付500¥足矣。
另一个台国内主机,按您的需求来选配,比如说选配http://www.ywzt.org/vps-knowledge/48.asp套餐二,月付99¥,年付990¥。如果香港的主机直接选用国内这款国内套餐二配置的主机,达到使用国内这款机器的性能,价格会远超99¥+50¥(同样的配置,国内主机效果会比香港的好很多,毕竟线路不一样)。
域名我们举例用abc.com来访问,配置好需要abc.com和www.abc.com能正常访问。假设香港主机IP为111.111.111.111,国内主机IP为222.222.222.222。
国内主机因为没有备案号,域名不能直接访问,所以我们选用域名+端口号来做“目标URL”地址,这里端口号我们选用88(需要上国内主机开放88端口,如果主机是我们这的,可以直接联系我们处理),反向代理的目标URL我们用http://fx.abc.com:88,将fx.abc.com先解析到国内主机IP 222.222.222.222,abc.com、www.abc.com解析到111.111.111.111香港主机。反向代理要求是1、目标Url必需是可以访问;2、本站点(香港主机上面的站点)所有域名访问将被传递到目标服务器,请确保目标服务器已绑定域名,所以国内主机222.222.222.222对应的站点需要绑定上fx.abc.com:88 abc.com:88 www.abc.com:88 这3个。


国内主机配置好以后,我们测试http://fx.abc.com:88是否可以正常访问,如果可以正常访问,接下来我们配置香港的主机。
香港主机配置相对来说简单多了,因为程序文件和数据库等是放在国内主机上面。
先登陆香港主机的主机管理系统,然后点网站-->添加站点,如图所示创建好站点。

ftp、mysql不需要设置,填好需要绑定的域名直接点提交创建站点即可。
站点创建以后,找到刚创建好的站点,点设置,然后点反向代理。

目标Url处填写http://fx.abc.com:88,其它不需要填写,然后点启用反向代理,接下来讲,如果让香港主机主要走国内带宽,因为带宽主要走国内,所以不需要启用缓存。
上面的工作做完后,反向代理的工作已经完成,网站已经可以正常访问,但现在有个问题,这样访问网站,国内主机、香港主机消耗的带宽一样,这样对香港主机要求的带宽也很高,下面来讲如果如何实现只让香港主机响应php、asp、html、aspx等网页文件,而图片、样式表、音频、视频、js、zip、rar等文件直接走国内主机,而达到香港主机使用极低的配置,而不影响访问速度。
实现原理是使用伪静态规则进行重定向,规则如图:

如果您还有其它文件需要走国内带宽,按上面的案例添加即可!
rewrite ^/(.*)\.jpg$ http://fx.abc.com:88/$1.jpg permanent;
rewrite ^/(.*)\.gif$ http://fx.abc.com:88/$1.gif permanent;
rewrite ^/(.*)\.png$ http://fx.abc.com:88/$1.png permanent;
rewrite ^/(.*)\.js$ http://fx.abc.com:88/$1.js permanent;
rewrite ^/(.*)\.css$ http://fx.abc.com:88/$1.css permanent;
rewrite ^/(.*)\.flv$ http://fx.abc.com:88/$1.flv permanent;
rewrite ^/(.*)\.doc$ http://fx.abc.com:88/$1.doc permanent;
rewrite ^/(.*)\.zip$ http://fx.abc.com:88/$1.zip permanent;
rewrite ^/(.*)\.rar$ http://fx.abc.com:88/$1.rar permanent;
rewrite ^/(.*)\.exe$ http://fx.abc.com:88/$1.exe permanent;
为了反向的稳定性,以免fx.abc.com解析不生效的时候导致nginx停止工作,建议改下/etc/hosts文件,将fx.abc.com强制解析到国内服务器IP,格式如下:
115.47.1.1 fx.abc.com
操作过程如果有任何问题,请直接联系我们处理(如果服务器不是我们这的,提供服务费也可以处理)!