正文开始,这里主要讲动静分离的方法,如果你是全部走 CDN,下面的内容可以不用看了,试试上面提到的 CDN 吧。
因为我觉得对于 WP 这种动态站没必要全站走 CDN,只需要在原站开个 Memcached 对象缓存和 PHP 脚本缓存 —— OPCache 就可以了,再把 js、css、图片等静态资源牵到 CDN,就能很好的起到提速的效果。
我也没用 oss 等云对象存储,感觉没必要,如果不用 oss 或者其他什么原因可能还要全部下载回服务器,如果你用的 oss 等云对象存储服务,括彩云的 CDN 可以免腾讯、阿里、火山的对象存储公网流出流量(免流方法)。
方法很简单,以前也出过用又拍的 CDN 做动静分离的教程。
原站准备
原站操作基于小白专用的宝塔,如果各位大佬自建的环境请自行处理。
1、给 wp 目录 wp-content 添加一个域名,照下图操作,在宝塔站点设置里的子目录绑定里添加一个其他的域名,如我添加的是 res.iowen.cn。
注意:文中的 res.iowen.cn 都改为你自己的域名
2、为这个域名增加伪静态规则
规则内容为:
#注意把下面的 www.iowen.cn 替换为你自己的域名和路径
location ^~ /wp-content {
add_header 'Access-Control-Allow-Origin' 'https://www.iowen.cn';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE, PUT';
add_header 'Access-Control-Allow-Credentials' 'true';
alias /www/wwwroot/www.iowen.cn/wp-content;
}
location ^~ /wp-content 里面的是增加了跨域,因为资源域名不一样,如果调用了字体等资源,需要设置允许的域名为你网站的域名。
第 6 行配置的作用是将所有以 /wp-content/ 开头的请求路径映射到服务器上的另一个路径,而不改变浏览器地址栏中的 URL。注意:请设置为你服务器对应的地址。
CDN 设置
1、注册并实名认证后(前往注册),登陆 CDN 后台添加加速域名,比如我的是 res.iowen.cn 看下图操作,这站点管理里添加你自己的域名。
2、去自己的域名提供商那添加一个 cname 解析,
3、解析完后,点上图右边的配置,主要的是设置一下 ssl 证书,其他的选项看着弄就行,不弄也行。
操作到这里后, CDN 设置就不需要管了。
替换静态资源链接
这一步只需要在服务器里添加一段代码就行,在你用的主题的文件夹里面的 functions.php 文件里添加。
/**
* 启用静态资源 cdn
*/
function io_rewrite_cdn_url(){
function io_rewrite_assets($html)
{
$suffix = 'jpg|jpeg|png|gif|js|css|ttf|woff|woff2|svg|eot'; //填写静态资源后缀
$static = 'https://res.iowen.cn'; //填写加速的静态域名
$pattern = '/' . str_replace('/', '\/', home_url()) . '\/wp-content([^"\']*?)\.(' . $suffix . ')/i';
$replacement = $static . '/wp-content$1.$2';
$html = preg_replace($pattern, $replacement, $html);
return $html;
}
if (!is_admin()) {
ob_start("io_rewrite_assets");
}
}
add_action('init', 'io_rewrite_cdn_url',55);
注意修改 7、8 行的代码
完成了,体验免费加速的快乐吧。








暂无评论内容