WordPress优化-动静分离

网站类4个月前发布 FRE_SKY
140 00

本文根据一为亿的内容部署而来,具体可以参考原文

原站准备

宝塔

1、添加域名

给wp目录 wp-content 添加一个域名,照下图操作,在宝塔站点设置里的子目录绑定里添加一个其他的域名,如我添加的是 res.ibian.online.online

res.ibian.online修改为自己的域名

Wordpress优化-动静分离

2、伪静态规则

为这个域名增加伪静态规则

Wordpress优化-动静分离

location ^~ /wp-content {
    add_header 'Access-Control-Allow-Origin' 'https://www.ibian.online';
    add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE, PUT';
    add_header 'Access-Control-Allow-Credentials' 'true'; 
    alias /www/wwwroot/ibian.online/wp-content;
}

跨域问题

location ^~ /wp-content 里面的是增加了跨域,因为资源域名不一样,如果调用了字体等资源,需要设置允许的域名为你网站的域名。

第 6 行配置的作用是将所有以 /wp-content/ 开头的请求路径映射到服务器上的另一个路径,而不改变浏览器地址栏中的 URL。注意:请设置为你服务器对应的地址。

CDN设置

做好域名映射

Wordpress优化-动静分离

然后再域名管理那边做好CNAME,

Wordpress优化-动静分离

3、配置

解析完后,点上图右边的配置,主要的是设置一下 ssl 证书,其他的选项看着弄就行,不弄也行。

操作到这里后, CDN 设置就不需要管了。

SSL证书可以再各平台申请或者自行部署ssl证书管理平台来获取后,再上传到宝塔和CDN平台

(但是这里有个问题,就是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|webp'; //填写静态资源后缀
        $static      = 'https://res.ibian.online'; //填写加速的静态域名
        $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行的代码

完成了,体验免费加速的快乐吧。

© 版权声明

相关文章

暂无评论

none
暂无评论...