对于用国外主机来做站的小伙伴,很多时候如果在国内进行操作或者面对国内访客的时候,会发现访问速度不是那么友好。其实我们可以使用CDN进行网站加速,说起来CDN这个玩意,貌似很高大上,但是很多小伙伴没用过…
对于用国外主机来做站的小伙伴,很多时候如果在国内进行操作或者面对国内访客的时候,会发现访问速度不是那么友好。其实我们可以使用CDN进行网站加速,说起来CDN这个玩意,貌似很高大上,但是很多小伙伴没用过不敢用,或者直接说用不起,那如果自己有几台服务器主机的话,那么就可以进行自己搭建CDN的方式进行海外网站加速了,在这里,it168资讯就给大家介绍一下利用BT宝塔面版反向代理/负载均衡/自建CDN加速海外网站访问教程。
还没安装BT宝塔面板?点击如下安装:
宝塔服务器面板,一键全能部署及管理,送你3188元礼包,点我领取
使用前提:
1、源站(放主要数据的网站)所在的主机部署在海外,访客主要是国内,且国内访问速度不够友好。
2、手上有几台VPS主机,以离大陆越近,线路越好最佳。
3、喜欢折腾。
如果本来源站就放在香港、日韩、台湾等地,在国内访问速度很不错,再加上网站主要是国内访客访问,那么就不是很有必要用CDN了,毕竟再进一步还不如直接用国内的CDN。当然,如果喜欢折腾的,尽管来捣鼓一下,还是很有成就感的。
一、自建CDN/反向代理/负载均衡的原理
原理很简答,利用手中闲置的主机,安装BT宝塔面版,然后在里面开启反向代理,开启缓存,再根据每台主机对国内线路(移动、联通、电信等)的友好情况进行解析设置,从而达到网站中转,自建CDN及负载均衡的作用。
至于使用CDN的好处,it168资讯也不想说太多,简单来说就是从最近的点位获取资源,打开网站速度更快,从而加速网站访问,如下图。

二、要实现的访问效果
最终我们要实现或者达到怎样的访问效果呢,这里it168资讯就举例说明。不仅仅是网站访问速度加快,还有隐藏源站IP,负载均衡等等效果。

当然,我们最在乎的还是网站访问加速了,o(* ̄︶ ̄*)o ,效果对比如下:
未进行CDN加速前的网站域名是www.xiapilu.com,放在美国A主机上。
>未加速前效果:
国外访客访问www.xiapilu.com域名的主机很快,ping值一般在10-50ms以内,打开页面速度基本1秒以内。但是国内访客访问www.xiapilu.com域名的主机速度一般,ping值在200-300ms之间甚至更高,打开页面速度基本在2.5秒以上或者更长。
网站域名不变,还是www.xiapilu.com,放在美国A主机上,不需要进行任何配置。利用香港主机B、日本主机C上对其进行反代CDN加速。
加速后的效果:
国外访客访问www.xiapilu.com域名的主机很快,ping值一般在10-50ms以内,打开页面速度基本1秒以内。国内访客访问www.xiapilu.com域名的主机速度加快,ping值在50-100ms之间。打开页面速度基本在1秒以内。
三、在闲置主机上安装BT宝塔面版
网上有很多自建CDN教程,比如直接用Nginx进行反代的,或者使用Fikker等程序进行CDN搭建的,这里it168资讯直接用BT宝塔面版进行反代,毕竟图形化界面,易操作,对于新手来说操作很简单。
宝塔服务器面板,一键全能部署及管理,送你3188元礼包,点我领取
首先利用SSH登陆香港主机B或者日本主机C,输入如下一键安装的代码:
Centos安装脚本:
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
Ubuntu/Deepin安装脚本:
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
Debian安装脚本:
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh
Fedora安装脚本:
wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh
BT宝塔面版的安装过程就不说了,网上太多了。
四、设置反向代理实现CDN效果
安装BT宝塔面版完成后,登录后一键安装Nginx及PHP即可,其他FTP及数据库都不用安装即可。
以上安装完成后那么香港主机B、日本主机C可以进行图形化操作了,接下来的操作及设置如下,如果有多台主机的话一模一样设置即可:
1、添加网站
在BT宝塔面版里增加网站,点击左边菜单,添加站点,域名填写和源站的域名一致,参考如下:


因为只做反向代理而已,无需增加数据库和上传下载功能。
2、添加反向代理
点击新建的站点,设置-反向代理-添加反向代理

里面要填的内容参考如下:

建议开启缓存,缓存时间根据自己的网站更新速度进行设置,比如更新比较密的,可以设置30分钟或者1个小时,如果更新不频繁的,那可以设置3-6个小时甚至更高。
目标URL指的是你的源站网址,如果源站有用到SSL的话,那这里的网址也要加上https,如果没有用到SSL的话,那就填http即可。内容替换一般不用填。
高级功能指的是,如果源站是默认是二级目录下的,那么就可以填上。比如原来的源站访问实际站点不是放在根目录里的,是https://shopee6.flxzz.com/bbs的形式,那么这里也要填上/bbs,到时访问还是和原来一样。
以上填好后保存即可。
3、设置SSL同步
如果源站有SSL的话,那么代理站的BT宝塔面版里的SSL设置要和原来源站的一样,将源站的SSL密钥这些复制过来就行了。

4、编辑hosts文件指定IP到域名
因为我们的源站是有数据的,反代的香港和日本主机域名和源站又一样,那就会出现反代的主机的数据从哪里获取的问题,如果不设置则会一直陷入一个死循环。因此,我们需要编辑hosts文件指定IP到域名,也就是告诉香港和日本主机这些CDN节点要到哪里获取真实的数据。
点击香港和日本主机的BT宝塔面版中的文件功能,找到etc文件夹,然后在文件夹里面找到hosts文件,点击右键进行编辑

输入的IP地址是源站的IP地址,域名是源站的域名(不用加https://),类似如下:
123.123.123.123 www.xiapilu.com
保存就行了。

5、重载Nginx配置
因为我们对配置进行了修改,那接下来就是需要重置Nginx的配置让其生效。

自此,反代端的香港主机及日本主机的设置已完成。
五、分线路解析IP
这时候还有最后一步,我们需要到域名解析后台进行分线路的解析。以国内的dnspod为例,我们需要根据不同的线路情况进行分线路解析IP。
比如香港主机的IP是1.1.1.1,在国内电信和移动访问速度快,ping值低,那么电信和移动线路的访客就直接解析到香港主机的IP,也就是1.1.1.1。同理,比如日本主机的IP是2.2.2.2,在国内联通线路访问速度快,ping值低,那么可以将联通线路的访客直接解析到日本主机的IP,也就是2.2.2.2。国外访问可以设置还是使用源站的IP即可,也可以根据情况自行调整。参考如下:

其中根据自己的实际情况进行IP的设置,同时将搜索引擎的抓取仍然指向源站IP即可。
以上解析等24个小时以上基本都可以更改完成,这个时候访问就会发现网站加速已经开始。有的如果设置TTL时间为120的话,那就是120秒就生效了。ping自己的域名,就可以看到返回各种设定的IP了。
自此,it168资讯介绍的利用BT宝塔面版反向代理/负载均衡/自建CDN加速海外网站访问的教程就结束了,如果有钱的话,还是可以上专业的CDN的,毕竟在回源处理,页面压缩,网站加速方面更加专业,有兴趣可以留言讨论。
还没安装BT宝塔面板?点击如下安装:
原创文章,作者:admin,如若转载,请注明出处:https://www.it168.online/webtech/2388/