Super Static Cache插件的Apache和Nginx伪静态规则

2022-09-01
304次阅读
没有评论

Super Static Cache是一款WordPress缓存插件,可以将WordPress页面转化为静态页面储存,当我们选择“Rewrite模式”时,需要在服务器上添加一条伪静态规则,分享基于Apache和Nginx下的Super Static Cache插件伪静态规则。

Super Static Cache插件的Apache和Nginx伪静态规则

Apache伪静态规则

将下方规则复制到.htaccess保存,上传到云服务器或虚拟主机根目录即可。

这个我调试很久,可能在部分主机商还有点问题,实在有问题无法解决就直接使用Direct模式吧,和推荐的区别就是一个便于管理的文件夹而已。

#BEGIN Super Static Cache
#Must the First Rewrite Rule

RewriteEngine On
RewriteBase /
RewriteRule ^super-static-cache/ - [L]

RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{QUERY_STRING} !.*=.*
RewriteCond %{DOCUMENT_ROOT}/super-static-cache/$1 -f
RewriteRule ^(.*)$ /super-static-cache/$1 [L]

RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{QUERY_STRING} !.*=.*
RewriteCond %{DOCUMENT_ROOT}/super-static-cache/$1/index.html -f
RewriteRule ^(.*)$ /super-static-cache/$1/index.html [L]


header set Content-Encoding gzip
header set Content-Type text/html


#End Super Static Cache

Nginx环境规则:

一般情况是自动生成的。

#BEGIN Super Static Cache
location / {

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;
}
}
#End Super Static Cache

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

原文:https://www.lamplnmp.com/wordpress/342/

正文结束
居烽
版权声明:本站原创文章,由 居烽 于2022-09-01发表,共计1426字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。