可以设置多个CDN地址的WordPress CDN插件-动态CDN

Wordpress2年前 (2023)发布 SUYEONE
730 0 0

在下载网站内容时,浏览器对同一域名的文件请求存在并发限制,这一限制因不同的浏览器而异。理解这一机制后,我们可以利用增加并发请求的方式来提升下载速度。一种有效的方法是通过多个域名分发网站资源,尤其是对于拥有大量静态资源如图片的网站。例如,采用三个CDN(内容分发网络)域名,像谷歌Chrome这样的浏览器可以同时处理18个文件下载,显著加快页面加载速度。

之前,有一个名为WP CDN Rewrite的插件尝试实现这一功能,但它并不支持多个CDN域名。现在,我推荐使用一款名为“动态CDN”的WordPress插件,它能支持多个CDN地址,将静态资源平均分配,从而优化下载效率。不过需要注意的是,这款插件目前并未在官方WordPress插件库中发布,您需要直接从其GitHub仓库(https://github.com/ericmann/dynamic-cdn)下载并手动安装。

安装完毕后,动态CDN的配置过程相对简单。您可以通过两种方式设置CDN域名:一是将以下代码添加到functions.php文件中:

“`php
add_Action(‘dynamic_cdn_first_loaded’, function(){
$manager = EAMann_Dynamic_CDN_DomAIn_Manager::last();
$manager->add(‘cdn0.mydomain.com’);
$manager->add(‘cdn1.mydomain.com’);
$manager->add(‘cdn2.mydomain.com’);
});
“`

二是将以下代码放入wp-config.php文件中定义常量:

“`php
define(‘DYNCDN_DOMAINS’, ‘cdn0.mydomain.com,cdn1.mydomain.com,cdn2.mydomain.com’);
“`

启用多域CDN后,您会观察到网络请求瀑布图中更多的资源得以并行下载,这将使页面加载更为流畅。

此外,动态CDN默认可能不包含对CSS文件的支持,但您可以使用插件提供的过滤器扩展支持的文件类型,或取消对某些类型的支持。以下示例代码将添加对CSS和其他文件类型的支援:

“`php
add_filter(‘dynamic_cdn_extensions’, function($types){
$types[] = ‘CSS’;
$types[] = ‘TTF’;
$types[] = ‘woff’;
$types[] = ‘woff2’;
$types[] = ‘zip’;
$types[] = ‘rar’;
// 更多文件类型…
unset($types[‘js’]);
return $types;
});
“`

然而,如果您的网站主要以文本为主,HTTP请求总数较少,多域CDN可能反而会因为浏览器解析额外的CDN域名而带来延迟。但对于拥有大量静态资源的站点,动态CDN插件无疑能显著提升网站速度。此外,启用HTTP/2和懒加载技术也是优化加载速度的有效手段,但这已超出了本文的讨论范围。

© 版权声明

相关文章

暂无评论

暂无评论...
☺一键登录开启个人书签等功能!