+
+
  • 简体中文
  •     最近在捣鼓站点前端框架的优化,发现博客的图片TTFB竟然高达1秒,而且还是40x40的缩略图.. 多番搜寻之后发现竟然是缩略图插件导致的,这就尴尬了,主要是我用的小鸡带宽很小,关闭缩略图的话,只能提供三四个人同时访问,因此只能想办法来解决这个问题。

    解决Z-blog缩略图插件TTFB问题  zblog ttfb php 伪静态 缩略图 第1张

        期间咨询了一个插件开发者,在咨询问题的同时,突然灵光一闪,会不会是我伪静态规则导致的?果然给到我的答案就是,确实是插件伪静态的问题... 这就让我很尴尬了,如果按照插件作者讲的伪静态规则排序的话,我的网站直接500,按照我的规则排序的话,伪静态虽然能生成,但是与程序无法配合处理? 开发者告诉我说是服务器问题,可是我真的是找不出什么问题,如果一定是有问题的话,那就是zblog程序本身伪静态的问题,兼容性太差! 闲话少说,先说说解决思路吧。

        有两种解决方式,一种是修改插件看看他是怎么解析的,一种是在模板加入判断处理。当然是选择后者了,前两天改那个评论插件让我现在都感到后怕!这里我们先看下原本的模板代码

        {php}
        $order = array('log_ViewNums'=>'DESC');
        $where = array(array('=','log_Status','0'));
        $array = $zbp->GetArticleList(array('*'),$where,$order,array(6),'');
        {/php}
        {foreach $array as $hotlist}
        {php}
        $pattern="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png|\.bmp]))[\'|\"].*?[\/]?>/";
        $content = $hotlist->Content;
        preg_match_all($pattern,$content,$matchContent);
        if(isset($matchContent[1][0]))
        $src=IMGS::getPicUrlBy($matchContent[1][0],40,40,$type); //调用插件修改图片
        else
        $src="/zb_users/theme/{$theme}/style/images/pic.png";
        {/php}
        {/foreach}

        我们需要在IMGS插件处理图片之前加入IF判定,这里的加入方法有两种,一种是放在前面判断,如果没有发现缩略图,则调用插件修改图片,这种需要你能够解析计算出路径,主要是他的加密处理,跑起来也不见得会有多快。因此我选择了第二种,在后面加入判断,如下

    该部分内容已隐藏,评论后 刷新页面 可见。

    上一篇
    2572浏览
    0评论
    简单的HTML跳转模板
    • 2020-05-05
    最近在捣鼓站点前端框架的优化,发现博客的图片TTFB竟然高达1秒,而且还是40x40的缩略图.. 多番搜寻之后发现竟然是缩略图插件导致的,这就尴尬了,主要是我用的小鸡带宽很小,关闭缩略图的话,只能提供三四个人同时访问,因...
    下一篇
    2429浏览
    0评论
    PHP前端调试输出命令
    • 2020-05-07
    最近在捣鼓站点前端框架的优化,发现博客的图片TTFB竟然高达1秒,而且还是40x40的缩略图.. 多番搜寻之后发现竟然是缩略图插件导致的,这就尴尬了,主要是我用的小鸡带宽很小,关闭缩略图的话,只能提供三四个人同时访问,因...
    评论区 / 共有6条评论

    user
    历史大全
    2021-03-01 22:01:37 /

    看看怎么办到的

    回复 / Reply
    user
    访客
    2020-07-22 09:02:11 /

    学习一下

    回复 / Reply
    user
    访客
    2020-05-29 16:10:16 /

    优秀来学习

    回复 / Reply
    发布评论 / 取消回复

    二维码

    感谢您的赞助