近期朋友购买了香港的云VPS,但是我的博客一直在美国机房,速度极慢。因为我只有FTP权限(说实话这FTP空间也是蹭的),只好想到利用CDN的办法。作为国内的SAE与BAE优秀的开发者免费空间,有些人已经打起了他们注意,设计了一套CDN方案,解决了国内域名备案难题。

LayerCDN就是安装到CDN服务器上的一款基于PHP的软件,配置也不是多么复杂。并且还是一款开源项目。

至于PHP程序的安装我就不多说了,无非是下载(上传)然后解压一下。

然后我们打开LayerCDN文件夹下的config.sample.inc.php配置文件。

修改下配置

<?php
	//Layer CDN 设定
	
	/**********基本设定**********/
	define('STATIC_URL','https://xcroot.com/');	//源站URL
	define('DOMAIN','layercdn');	//使用云存储时,填写存储空间的名字;使用本地存储时,填写存储的相对路径。
	define('WELCOME_DOC',TURE);	//空请求时是否显示欢迎界面
	
	/*********防盗链设定*********/
	define('ALLOW_REGX','.*');	//设置防盗链允许的[域名]正则表达式,此表达式只匹配referer的域名部分
	//define('ALLOW_REGX','^(best33\.com|.*\.best33\.com|)$');	//允许best33.com,*.best33.com,浏览器直接访问
	//define('ALLOW_REGX','^(best33\.com|.*\.best33\.com)$');	//允许best33.com,*.best33.com,不允许浏览器直接访问
	//define('ALLOW_REGX','^(.*)$');	//允许任意,允许浏览器访问
	//define('ALLOW_REGX','^(.+)$');	//允许任意,但不允许浏览器访问
	
	/**********进阶设定**********/
	define('PURGE_KEY','purge');	//刷新缓存的密码,访问http://domain/PURGE_KEY/path/to/file来刷新缓存。
	define('MIME','text/html');	//默认MIME类型,可以设为application/octet-stream则对未知项目自动弹出下载。
	define('DIRECT_EXT','php|asp|htm|html');	//不进入缓存的扩展名,安全起见不要删除PHP。
	define('NO_LOCATE',false);	//设置后将不进行跳转而采用read读取方式,可能会降低速度并增加流量。仅当遇到问题时启用。
	define('NO_KEY',true);	//启用后将不再使用一串md5编码的key作为文件名,当想保持文件名一致时启用之。
	define('NO_SECOND_FLODER',true);	//启用后将不再使用两层文件夹存储缓存,仅在本地环境、NO_KEY为假时有效。
	define('STATIC_HOST','');	//可以留空,也可以在这里填写你的源站域名,而在STATIC_URL中填写IP,减少域名解析的时间。
	
	/**********高级设定**********/
	//define('RUN_ENV', 'GCS');	//自定义运行环境(如不去掉前面的//则自动判断)可选:BAE/SAE/GCS/LOCAL 请大写
	//define('CS_AK','dummy');	//自定义云存储空间的Access Token,通常不需要
	//define('CS_SK','dummy');	//自定义云存储空间的Secret Token,通常不需要

清晰的代码注释,让人很好理解。我只改动了5-7行

	define('STATIC_URL','https://xcroot.com/');	//源站URL
	define('DOMAIN','layercdn');	//使用云存储时,填写存储空间的名字;使用本地存储时,填写存储的相对路径。
	define('WELCOME_DOC',FALSE);	//空请求时是否显示欢迎界面

第一个是写你存放网站源码的地方。第二个倒是无所谓,这个是BAE,SAE等配置使用的–。第三个,如果打为FALSE就屏蔽了CDN程序的广告页面。姑且称为广告页,其实也就是作者写的教程和配置方法。你每次访问CDN首页都是他,关掉后就是你博客主页了。这倒也无所谓。一般访问的都是你的主域名。另外官方带的是Apache的规则,用nginx服务器的就没法用了。我转换了并且整体打包了,点我下载

配置完成后你为该主机解析的域名,方便后面填写,一级二级收费免费无所谓,并不影响网站访问。

目前常规博客WordPress的缓存插件已经集成(WP Super Cache 和?W3?Total?Cache)

这里简单说下WP Super Cache,下载该插件并启用(如果启用出现问题就注意下php权限是否均设置位755)。然后找到CDN选择卡。点开后,其他均不做修改,仅仅修改一下Off-site URL为你刚刚解析到CDN服务器的域名,并且在开启CDN加速上打勾。

而对于其他网站你可以按以下两点操作(摘自LayerCDN?作者博客)

  • 将网站模板中静态文件的的根目录URL替换成你的SAE应用地址,如将http://blog.creatist.cn/logo.jpg换成http://mysqecdn.sinaapp.com/logo.jpg。对于网站程序的一个建议是,设置一个$cdn_base配置变量,然后静态文件的URL根据$cdn_base生成,以后修改CDN只要配置这个变量就可以了。
  • 最后,刷新你的网站。然后感受网站加载速度的飞跃。
页面下部广告

2 对 “LayerCDN 为博客加速到国内,成功开启香港CDN节点(含Nginx规则)”的想法;

  1. 不知道博主有没有发现,这样搭建后是没有缓存图片在本地的,而是每次访问都获取一次,跟直接用自己的没什么两样,是程序里哪出了错误,如果博主知道还望告知!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

鲁ICP备17018668号-1