主要适用于纯静态插件 Super Static Cache 使用的伪静态规则,其中包括之前的死链接301到现在的链接。
如果死链接太多会影响网站的收录和用户的访问,使用下面的这个伪静态规则可以避免这一类的问题。
代码如下:
#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 ^/(\d+).html http://$host/post/$1.html permanent;
rewrite ^/html/(\d+).html http://$host/post/$1.html permanent;
rewrite ^/(\d+)/ http://$host/post/$1.html permanent;
rewrite . /index.php last;
}
}
#End Super Static Cache
PS:想给网站搬家到虚拟主机上,一般虚拟主机使用的都是apache,所以这个规则就失效了,但我还是想复制备份一下,后面想用又得重新写,太浪费时间了。
正文结束