什么是CDN?
CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。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
- 从CDN请求后,小文件能不能随着WordPress的版本更新而即时更新?
- 这些小文件对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 文章源自玩技e族-https://www.playezu.com/447031.html
原创声明:本文章为原创内容,所有文章均由博主亲自撰写,严格遵循原创原则。我们承诺不使用任何人工智能生成的内容,所发布的每一篇文章都经过深思熟虑,旨在为读者提供真实、有价值的观点和信息。我们坚信原创才是知识分享的根本,致力于为广大读者呈现最具真实性和独特性的文章。感谢您的支持与关注,欢迎持续关注我们的原创内容。