51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Super Static Cache详细设置(wordpress 缓存)

Super Static Cache可以生成静态HTML文件,而且查询数据的时候如果有静态缓存直接从缓存中查询不经过数据库查询。而且,Super Static Cache插件有Direct、PHP和Rewrite三种缓存模式。一般推荐使用最后一种Rewrite。

wp缓存设置

文末有 Super Static Cache 下载链接

启用了 Super Static Cache 缓存

伪静态 做了修改:

之前的是这种:

location /
{
try_files $uri $uri/ /index.php?$args;
}

rewrite /wp-admin$ $scheme://$host$uri/ permanent;

把之前的代码删除,添加如下代码

修改后:

#BEGIN Super Static Cache
location / {
	 #try_files $uri $uri/ /index.php?$args;
    
    if (-f $request_filename) {
        break;
    }
    if ($uri ~ /(.*)$){
        set $wpuri $1;
        set $sscfile $document_root/super-static-cache/$1;
    }
    set $ssc Y;
    if ($query_string !~ .*=.*){
        set $ssc "${ssc}Y";
    }
    if ($request_method != "POST"){
        set $ssc "${ssc}Y";
    }

    if (-f $sscfile){
        set $ssc "${ssc}F";
    }
    if (-f $sscfile/index.html){
        set $ssc "${ssc}I";
    }
   
    if ($ssc = YYYF){
        rewrite . /super-static-cache/$wpuri break;
    }
    if ($ssc = YYYI){
        rewrite . /super-static-cache/$wpuri/index.html break;
    }

    if (!-e $request_filename){
        rewrite . /index.php last;
    }
}
# rewrite /wp-admin$ $scheme://$host$uri/ permanent;

#End Super Static Cache

Super Static Cache 优点:

安装配置简单, 缓存效率高, 三种模式,非常简单, Rewriter模式(推荐)可以不依靠数据库。

Super Static Cache 设置:

第一步: 在 后台中直接搜索 插件名字。

Direct模式将会把缓存内容直接存放在服务器上,这是最节省资源的模式,但是这种方式会造成缓存内容管理困难。

PHP模式将会把缓存内容存放在一个目录里,这样将会方便管理,但PHP模式会依赖数据库服务器,如果您的数据库服务器宕机,网站将不可访问。

Rewrite模式会把缓存内容放到一个目录,缓存成功之后,网站不再依赖数据库,但是您需要在服务器上添加一条伪静态规则。

注意这个箭头的提示, 设置成功后有提示的:

第2步: 直接选择 Rewrite模式

然后点击保存

这样就成功了

我们检测一下:

非登录用户 后 访问网址才可以生成缓存

在服务器目录中会生成一个目录

我们自己 访问网站的时候,比如访问一篇文章,就会在这个目录中生成一个静态的html文件:

找了很久这样的功能,今天终于用上了, 希望以后不再变更了。

这个插件可以 缓存 tag 标签页, 文章, 分类页等。 之前的 wp-cache 不支持tag页的缓存,而且依赖数据库。

后期我们要更新缓存时候, 比如我修改了文章,我们也不需要担心,它会自动给我们更新的:

当发生下列事件时,相应的缓存会被建立/重建
文章发布
文章更新
删除文章
单页发布

功能简单粗暴。

测试: 我们把先访问 几个网页 缓存以下, 然后 数据库配置文件的密码改一下, 然后再去访问我们的网页,测试一下。

Super Static Cache 问题

1 、缓存的加载速度快不快?

缓存好之后,下次访问次文章时,web 服务器会直接访问这个缓存文件(Direct 模式和 Rewrite 模式),并不通过 wordpress,也不会查询数据库,这样节省了很多资源。即使这样,加载速度也会和您的服务器有关系。

2 、直接缓存和重写缓存有什么区别?

直接缓存会根据固定连接的设置,把缓存文件直接存放在 wordpress 安装目录下,如果页面较多的话,会导致 wordpress 程序文件和缓存文件混在一起,重写缓存就是专门建立一个缓存存放目录(super-static-cache)来存在这些缓存文件。当然,必须要升级网站的 rewrite 规则。

3 、super static cache 适用于哪些场合?

super static cache 的诞生起初是为了满足我个人的工作需要,和其它缓存插件一样,有自己适用的场合。 如果你的网站内容很多,访问量大,数据库服务器压力巨大,但是磁盘空间充足,可以选择 super static cache,反过来,如果您的网站内容少,流量低,更新频繁,不推荐使用 super static cache。

4 、如何清除缓存文件?

最新版本的高级设置里有根据缓存类型清理缓存的选项,如果你需要清理所有缓存,直接选择所有(ALL),然后点击清理按钮即可。需要注意的是,由于服务器环境,权限配置等一些因素,可能导致缓存清理不完的情况,如遇到这种情况,请给我留言。

5 、新增的 PHP 模式有何特点?

PHP 模式是 3.0 版本中新增的缓存模式,相对其它两种模式,它是最耗费资源的模式,因为这种缓存模式还是需要数据库的支撑,这就意味着如果数据库宕机,网站是打不开的,PHP 模式只是减少了数据库的查询次数。它的优点是兼容部分插件。

6 、严格缓存模式和非严格缓存模式是什么?

严格模式和非严格模式仅针对 Direct 模式,它要解决的是关于 URL 的问题,严格模式下,类似 www.example.com/archives/1 这种 url 是不能被缓存的,非严格模式下,这类的 url 会被缓存,但是第二次访问服务器一般会重定向到 www.example.com/archives/1/ (注意后面的斜杠)。如果你使用 PHP 模式或者 Rewrite 模式,忽略这项配置即可。

7 、为什么缓存成功之后,搜索功能不能用了?

搜索功能不能使用是因为搜索表单的目标地址地址是"/", 而"/"指向的是目录 index,很多服务器的 index.html 的优先级比 index.php 高,所以操作搜索功能失效。解决办法: a, 把搜索的目标地址改成"/index.php"(或者 WP 相应安装目录的 index.php)。b, 关闭首页缓存。c, 使用 Rewrite缓存模式。

8 、Super Static Cache Spider 是什么?

当内容更新时,Super Static Cache 会自动建立缓存,Super Static Cache Spider 是自动建立缓存的爬行蜘蛛,php 开启 curl 扩展,日志中才能看到 Super Static Cache Spider 的爬行轨迹,它的来源 IP 为您的服务器或者 CDN 提供商的 IP 地址。Super Static Cache Spider 只会内容作出更新时爬行。

9 、为什么访问会出现 403 错误或者返回目录的 index

当使用 Direct 模式,并且固定链接含有多级目录设置,如 /%year%/%monthnum%/%day%/%postname%/ 时,网站的文章的url是类似 www.example.com/2015/03/02/hellow-world/,当缓存生成之后,访问 www.example.com/2015/03/02/,www.example.com/2015/03/ 等时要么返回 403(web 服务器没有开启autoindex时),要么返回相应目录的 index(web 服务器开启 autoindex 时)。如果你的网站的固定链接是类似上面这种深层次的,推荐使用 Rewrite 模式,可以避免此问题发生。

10 、伪静态规则怎么添加?

当使用 Rewrite 模式时,需要往 web 服务器上添加伪静态规则,伪静态规则的生成办法是,选中 rewrite 模式,点击升级,系统会自动生成伪静态规则(暂时只支持 apache 和 nginx)。对于 apache,要把生成的伪静态规则添加到网站的 .htaccess 或 httpd.conf 里;对于 nginx,则需要把伪静态规则添加到相应配置的 server 字段里。添加时,注意要把这个伪静态规则添加到所有伪静态规则的之前。添加之后,再次点击升级,如果提示消失,则表明规则添加正确。

11 、nginx 上为什么会提示 location Duplicate(location 字段重复)

Nginx 一个路径只支持一个 location,如果在添加 Super Static Cache 之前,你的 Nginx 有和插件系统的伪静态规则一样的 location,把两个伪静态合并到一起,然后添加到服务器。注意保持插件的伪静态规则在前面。

12 、为什么我在后台发布文章,缓存可以更新,用工具采集,缓存就不能更新?

Super Static Cache 缓存建立的原理是根据系统的动作,在后台发布文章时,系统能够监测到相关动作并建立缓存,如果直接把数据插入到数据库,系统会因为监测不到动作也不能建立缓存。如果你的网站使用工具进行采集,推荐在设置页面取消首页缓存,或者使用 crontab 等工具定期更新首页缓存。

13 、我想指定单个不被缓存的页面

在 3.3.1 版本中加入了指定单个不需要缓存页面的功能,直接在此处填入不想要缓存的页面网址即可,一行一个。

Wp super cache 最著名的 wordpress 缓存插件之一,它是一款高级插件,能够根据需要作出很多配置,还能自动设置缓存过期时间,在大多数情况下都非常实用。但是一但数据量多大,就可能因为不合理的设置导致服务器压力过大,出现网站反应速度慢,打不开等情况。Super Static Cache 在大多数情况下可以替换它。

cos-html-cache 是国人开发的一款 wordpress 纯静态化插件,会自动生成文静态文档,下次访问会直接通过web服务器而不是 php,总体表现良好,但是它对固定链接的要求非常高,必须是带有 .html 的后缀才能被缓存,而且只有一种缓存模式,所有缓存文件和程序文件混在在一起,非常难于管理。Super Static Cache 可以完全替代 cos-html-cache。

Super Static Cache 集合 wp super cache 和 cos-html-cache 的特点,安装配置简单,缓存效率高,有良好的交互,有 Direct,PHP 和 Rewrite 三种模式,还能根据需要设置不缓存的页面。目前最新版本为 3.3.3,更新于 3 个月前,已经兼容到 WordPress 4.7.3。

wordpress-插件: https://url69.ctfile.com/d/253469-55978078-8c079a?p=2206 (访问密码: 2206)

赞(4)
未经允许不得转载:工具盒子 » Super Static Cache详细设置(wordpress 缓存)