wordpress优化-动静分离-每月免费30G加速CDN

 9个月前     2.4K  

文章目录

好久没写过优化教程了,主要是没啥新东西,这里主要介绍一个免费CDN - 括彩云,每月30G流量,比又拍多一倍,也没门槛,融合云,全球加速,如果需要的流量大,从我这(一为云)购买可8.5折哦

一为云是括彩云的代理,套餐规格和括彩云一样。

广告完成,正文开始,这里主要讲动静分离的方法,如果你是全部走 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 都改为你自己的域名

wordpress优化-动静分离-每月免费30G加速CDN

2、伪静态规则

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

wordpress优化-动静分离-每月免费30G加速CDN

规则内容为:

#注意把下面的 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看下图操作,这站点管理里添加你自己的域名。

wordpress优化-动静分离-每月免费30G加速CDN

2、解析

去自己的域名提供商那添加一个 cname 解析,内容照下图马赛克位置。

wordpress优化-动静分离-每月免费30G加速CDN

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行的代码

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

版权声明:一为 发表于 9个月前,共 1831 字。
转载请注明:wordpress优化-动静分离-每月免费30G加速CDN | 一为忆

您可能感兴趣的

10 条评论

  • avatar

    我要霸占你的美 ( VIP 1 )

    浙江
    回复

    宝塔里目录绑定的域名怎么设置SSL啊?

    • avatar

      爱云 ( VIP 1 )

      浙江
      回复

      @我要霸占你的美 在添加一个站点 设置目录为那个目录 然后设置伪静态 设置ssl

  • avatar

    龙民 ( VIP 1 )

    浙江
    回复

    ttf wotf会提示有跨域问题

  • avatar

    Mike ( VIP 1 )

    湖南
    回复

  • avatar

    龙民 ( VIP 1 )

    浙江
    回复

    提示第8行错误 :zhuakuang:

  • avatar

    jiyouzhan ( VIP 1 )

    江西
    回复

    这篇文章写得深入浅出,让我这个小白也看懂了!

  • avatar

    完美者 ( VIP 1 )

    四川
    回复

    我看中了免云存储的外网流量这个点 :shengli:

    • avatar

      一为 ( VIP 1 )

      湖南
      回复

      @完美者 好久没更新过博客了,这产品确实不错,可以试试哈,免流只需要发工单简单操作一下就行