wordpress使用cdn加速优化后台静态文件 -凯发app官网

玩技e族 运维笔记评论9字数 1423阅读4分44秒阅读模式

什么是cdn?

cdn的全称是content delivery network,即内容分发网络。cdn是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。cdn的关键技术主要有内容存储和分发技术。——百度百科文章源自玩技e族-https://www.playezu.com/447031.html

wordpress使用cdn加速优化后台静态文件前端静态化,这无可厚非,但问题在于wordpress的后台。wordpress后台一般开放于权限更高的用户,当然有些wordpress网站后台也会直接对普通用户开放。wordpress后台与前台的不同在于后台是动态的。由于wordpress后台可以对整个网站进行调整,因此后台作为动态页面亦无可厚非。但问题就在于,即便使用了全站cdn,在访问wordpress后台时,为了保证动态访问,所有的js、css等小文件都是根据每次访问而请求一次的。这无疑加剧了网站服务器的开销,比如随便的一个wordpress网站后台,居然有上百个小文件请求:文章源自玩技e族-https://www.playezu.com/447031.html

那么有没有办法把一些小文件不再从源服务器请求?当然是有的,但这里要考虑一些问题:文章源自玩技e族-https://www.playezu.com/447031.html

  1. 从cdn请求后,小文件能不能随着wordpress的版本更新而即时更新?
  2. 这些小文件对wordpress后台的运行至关重要,cdn是否有被投毒的风险?

jsdelivr加速规则

load any github release, commit, or branch:文章源自玩技e族-https://www.playezu.com/447031.html

https://cdn.jsdelivr.net/gh/user/repo@version/file

load any plugin from the wordpress.org plugins svn repo:文章源自玩技e族-https://www.playezu.com/447031.html

https://cdn.jsdelivr.net/wp/plugins/project/tags/version/file

上述规则不仅可以加速github内容,还能加速wordpress的插件内容。现在有了基础,就要提到wp-china-yes插件的一个后台加速功能了。文章源自玩技e族-https://www.playezu.com/447031.html

加速后台代码

以下是来自插件wp-china-yes的后台加速代码:文章源自玩技e族-https://www.playezu.com/447031.html

add_action('init', function () {
    ob_start(function ($buffer) {
        return preg_replace('~'.home_url('/').'(wp-admin|wp-includes)/(css|js)/~', sprintf('https://a2.wp-china-yes.net/wordpress@%s/$1/$2/', $globals['wp_version']), $buffer);
    });
});

利用上述的jsdelivr的加速方式后,就是如下的加速代码:文章源自玩技e族-https://www.playezu.com/447031.html

add_action('init', function () {
     ob_start(function ($buffer) {
         $buffer = preg_replace('~'.home_url('/').'(wp-admin|wp-includes)/(css|js)/~', sprintf('//cdn.jsdelivr.net/gh/wordpress/wordpress@%s/$1/$2/', $globals['wp_version']), $buffer);
         return $buffer;
     });
 });

选择以上的两段代码其中之一直接放入主题/插件中即可立即生效。(注意:请勿对测试版加速!)后台访问速度直接翻翻!文章源自玩技e族-https://www.playezu.com/447031.html

注意:本文法律责任由该作者承担,侵权请联系▷诈骗举报◁▷新闻不符◁▷我要投稿◁
免责声明:本文内容来自用户上传并发布或网络新闻客户端自媒体,玩技博客仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系删除。

发表评论

匿名网友
确定