WordPress WP-Super-Cache 缓存插件 Nginx 优化规则

WP-Super-Cache 作为 WordPress 的老牌静态缓存插件,它在 WordPress.Org 的一个角落一直有一份 Nginx 伪静态规则(https://wordpress.org/support/article/nginx/#wp-super-cache-rules)。
配置后可绕过 PHP 直接由 Nginx 返回 HTML 页面,能大大提高网站的并发能力和速度。
这份规则如下,替换 WordPress 原本的伪静态规则即可(已修改同时兼容 HTTPS/HTTP,并增加是否命中的 Nginx-Static 头)。

# WP Super Cache 规则

set $cache_uri $request_uri;
set $nginx_static 'BYPASS For File';

# POST 请求不读取缓存
if ($request_method = POST)
{
    set $cache_uri 'null cache';
    set $nginx_static 'BYPASS For POST';
}

# 查询请求不读取缓存
if ($query_string != "")
{
    set $cache_uri 'null cache';
    set $nginx_static 'BYPASS For Query';
}

# 特定页面不读取缓存
if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|/wp-(App|cron|login|register|mail).php|wp-.*.php|/feed/|index.php|wp-comments-popup.php|wp-links-opml.php|wp-locations.php|sitemap (_index)?.xml|[a-z0-9_-]+-sitemap ([0-9]+)?.xml)")
{
    set $cache_uri 'null cache';
    set $nginx_static 'BYPASS For URL';
}

# 特定 Cookie 不读取缓存
if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_logged_in|woocommerce_items_in_cart|woocommerce_cart_hash|wptouch_switch_toogle")
{
    set $cache_uri 'null cache';
    set $nginx_static 'BYPASS For Cookie';
}

# 判断缓存是否存在
if (-f $document_root/wp-content/cache/supercache/$http_host/$cache_uri/index-https.html)
{
    set $nginx_static 'HIT';
}
if (-f $document_root/wp-content/cache/supercache/$http_host/$cache_uri/index.html)
{
    set $nginx_static 'HIT';
}

location /
{
    try_files /wp-content/cache/supercache/$http_host/$cache_uri/index-https.html /wp-content/cache/supercache/$http_host/$cache_uri/index.html $uri $uri/ /index.php?$args;
}

add_header Nginx-Static $nginx_static;
rewrite /wp-admin$ $scheme://$host$uri/ permanent;

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/386889.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
重蔚的头像重蔚管理团队
上一篇 2023年10月18日 17:54
下一篇 2023年10月19日 17:49

相关推荐

  • WordPress更换静态首页的方法。

    在使用wordpress建站的过程中,网站首页默认显示的是最新的文章,这样做是对优化是有好处的,适合博客文章等类型的站点使用。不过有时候我们并不想展示最新的文章,比如产品站点、企业官网等,只想展示一个特定的静…

    2022年10月25日
    029
  • 2022年好用的WordPress极简主题推荐。

    在现代网页设计中,极简风格一直是设计师们所推崇的,干净的界面加上简洁的设计,无论在哪里都更受欢迎,那么如何将自己的WordPress博客做成极简风格呢,在本文中,我们将为大家带来7款极简风格的WordPress主题,让…

    2022年10月25日 wordpress开发
    036
  • WordPress安装插件的3种方法。

    在搭建好WordPress站点后,默认情况下它只是一个可以发布文章的博客系统,如果我们想要更多的功能,比如页面编辑、SEO、商城等,必须安装对应的插件,下面就分享下WordPress安装插件的几个方法 WordPress后台搜索安…

    2022年10月25日 wordpress开发
    027
  • WordPress修改图片文件名方法。

    在网站SEO过程中,图片优化是非常重要的一项,其中有一点就是文件名优化,不过很多站长都是后来才慢慢了解到,这样就导致之前很多的文件名并不规范,在本文中我们将教大家如何在WordPress中修改图片文件名称 方法一…

    2022年10月25日 wordpress开发
    023
  • Word发布Wordpress博客文章

    Office作为我们的常用办公软件,也能实现离线发布Wordpress博客的功能,既方便又快捷,还能解决了Wordpress本身编辑器不够强大的问题,利用Office word2013的编辑功能让文章更具有用户体验。 # 软件准备 Word软件一…

    2024年6月28日 wordpress开发
    090
  • 小编分享wordpress 外贸网站建设。

    WordPress外贸网站建设,提供一站式解决方案,助力企业拓展国际市场。 WordPress外贸网站建设:开辟全球市场的窗口 随着全球化的不断推进,越来越多的企业开始将目光投向海外市场,希望通过互联网开拓新的商业机会…

    2024年7月8日
    03
  • WordPress文章发布失败或更新失败解决方法。

    最近朋友的WordPress网站出现了一个问题,无法发布文章与修改文章,点击发布后会显示发布失败,修改旧文章或保存草稿则会提示更新失败,所有的内容都无法更新了,经过一番查找才解决,这里分享下方法 方法一:使用…

    2022年10月25日 wordpress开发
    046
  • WordPress建立数据库连接时出错解决方法。

    在使用WordPress建站时,有时候站点会遇到”建立数据库连接时出错“的报错,整个站点都无法正常访问,如何修复这个错误呢?本文中来分享几个解决方法 方法一:重启数据库 如果你是正常使用网站,在没有进行任何风险操…

    2022年10月25日 wordpress开发
    042

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息