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