免费搭建博客的平台中,SAE+EMlog是个不错的选择,但对于未备案域名来说,绑定域名后,只能走海外线路,这样不但导致网站的访问速度下降,还会对云豆资源产生双倍消耗。事实上,在不影响域名绑定的情况下,有些静态资源(如静态图像、CSS和JS等)是可以用SAE的二级域名访问的,这样还可以加快访问速度、降低云豆消耗。
目前在网上看到流行的Wordpress SAE版本绑定域名后的解决办法倒是挺多的,但对于相对小众的EMlog,却没找到一个合适的方法,所以就写了个EMlog SAE二级域名插件,方便各位EMloger。该插件针对SAE上绑定未备案域名的EMlog,将静态资源文件通过原SAE二级域名进行访问,来达到加快访问速度和降低云豆消耗的目的。
代码比较简单,直接贴上:
<?php /* Plugin Name: SAE二级域名插件 Version: 1.0 Plugin URL: https://xuhehuan.com/1838.html Description: 针对SAE上绑定未备案域名的EMlog,将静态资源使用原SAE二级域名访问,提升速度,节省云豆。 Author: xhhjin Author Email: xhhjin@gmail.com Author URL: https://xuhehuan.com/ */ ! defined ( 'EMLOG_ROOT' ) && exit ( 'access deined!' ); ob_start (); function emlog4sae_init() { global $config; $html = ob_get_contents (); $home_url = $_SERVER ['HTTP_HOST']; ob_end_clean(); $config['cdn_host'] = "{$_SERVER['HTTP_APPNAME']}.sinaapp.com"; echo preg_replace ( "/(<[img|link|script|a].*[src|href]=[\"\'])(http:\/\/)({$home_url})(\/[^>\'\"]*\.(?:jpg|jpeg|gif|png|ico|css|js))/U", "\${1}\${2}{$config['cdn_host']}\${4}", $html ); } addAction ( 'index_footer', 'emlog4sae_init' );
使用方法:首先直接下载我做好的文件(点击下载),当然你也可以将上面的php代码存成一个文件,放到文件夹里,文件名和文件夹名称要一致(不包括后缀);然后上传文件夹到EMlog的plugins目录;最后修改下使用模板的header.php文件,将<?php doAction(‘index_head’); ?>移到<head>标签后。
全部完成,去博客后台启用插件看看效果!
欢迎转载,转载请注明出处:蔓草札记 » EMlog SAE二级域名插件