宝塔面板中清除Nginx缓存有五种方法:一、面板界面一键清空;二、SSH删除缓存目录;三、用ngx_cache_purge按URL精准清除;四、重载PHP清FastCGI缓存;五、Varnish缓存需单独清理。

当您在宝塔面板中部署了使用Nginx作为Web服务器的网站,并发现页面内容未及时更新或静态资源仍显示旧版本时,很可能是Nginx代理缓存或FastCGI缓存未被刷新。以下是针对宝塔面板环境手动清除Nginx生成缓存的多种可行方法:
一、通过宝塔面板界面一键清空Nginx缓存
宝塔面板为Nginx缓存提供了图形化操作入口,适用于已启用proxy_cache且缓存路径配置为默认目录的场景。该方式无需命令行操作,安全性高,适合大多数用户。
1、登录宝塔面板,在左侧菜单栏点击网站,进入站点列表页面。
2、在目标站点“操作”列中,点击设置按钮。
3、在弹出的设置窗口中,点击左侧菜单栏的Nginx,再选择子项缓存规则。
4、在缓存规则页面右上角,点击全清Nginx缓存按钮。
5、确认弹窗提示后,等待面板返回“清理成功”提示。
二、通过SSH终端删除Nginx缓存目录文件
此方法直接作用于文件系统,可彻底清除所有缓存文件,适用于缓存目录未被面板识别、或面板界面按钮失效的情况。操作前需确认缓存路径是否与Nginx配置一致。
1、使用SSH工具(如Xshell、FinalShell)以root身份连接服务器。
2、执行命令查看Nginx缓存路径配置:grep -r "proxy_cache_path" /www/server/nginx/conf/。
3、根据输出结果定位缓存目录,常见路径为/www/server/nginx/proxy_cache_dir或/var/cache/nginx。
4、执行清除命令:rm -rf /www/server/nginx/proxy_cache_dir/*(请将路径替换为实际路径)。
5、验证缓存目录是否为空:ls -la /www/server/nginx/proxy_cache_dir/,应无任何子目录或文件。
三、使用ngx_cache_purge模块按URL精准清除缓存
该方法允许仅清除特定URL路径的缓存条目,避免全量清空影响性能,前提是Nginx已编译并启用ngx_cache_purge模块。宝塔默认OpenResty版本通常支持此模块。
1、检查模块是否启用:nginx -V 2>&1 | grep -o ngx_cache_purge,若返回结果含该字符串则表示已支持。
2、编辑对应网站的Nginx配置文件,在server块内添加purge location配置段:
3、在location ~ /purge(/.*) { allow 127.0.0.1; deny all; proxy_cache_purge cache_one $1$is_args$args; } 中,cache_one需与proxy_cache_path指令中定义的keys_zone名称一致。
4、保存配置后执行:nginx -s reload重载Nginx服务。
5、发送PURGE请求清除指定URL缓存:curl -X PURGE http://your-domain.com/purge/path/to/page.html。
四、清除FastCGI缓存(PHP OPcache)
当网站使用PHP动态脚本且启用了OPcache时,即使Nginx缓存已清,PHP字节码仍可能被缓存。此步骤独立于Nginx代理缓存,需单独处理。
1、登录宝塔面板,在左侧菜单栏点击软件商店,找到已安装的PHP版本,点击设置。
2、在PHP设置页面中,切换至配置修改选项卡。
3、搜索关键词opcache.enable,确认其值为1(即启用状态)。
4、点击页面右上角的重载PHP按钮,该操作会重启PHP-FPM进程并清空OPcache内存缓存。
5、如需强制刷新全部OPcache条目,可访问宝塔PHP信息页中的OPcache管理功能(若已启用),点击清除缓存。
五、清除Varnish缓存(如已启用)
若网站在宝塔中额外启用了Varnish作为前端缓存层,则Nginx缓存清理无法影响Varnish缓存内容。必须单独操作Varnish缓存引擎。
1、登录宝塔面板,进入网站列表,点击目标站点右侧的设置。
2、在设置窗口左侧菜单中,点击Varnish,再选择缓存规则。
3、在缓存规则页面右上角,点击全清Varnish缓存按钮。
4、若需清除特定URL,可在缓存细则栏输入正则匹配规则(如^/api/.*),点击提交后生效。










