You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel blade缓存持续恢复旧视图问题排查求助

Laravel视图缓存残留问题排查解决方案
  • 排查PHP OPcache缓存
    PHP开启OPcache扩展后会将编译后的PHP代码(含编译后的Blade视图文件)缓存到内存中,即使磁盘上的缓存文件删除,OPcache仍可能返回旧的执行结果。
    修复操作:重启PHP-FPM或Apache服务,参考命令:
    # 重启对应版本的PHP-FPM,示例为PHP8.2
    sudo systemctl restart php8.2-fpm
    # Apache服务重启参考
    sudo systemctl restart apache2
    
  • 排查客户端/CDN缓存
    先使用浏览器无痕模式访问站点验证:
    • 无痕模式展示正常:属于浏览器本地静态资源/页面缓存,可在前端构建配置中开启资源版本哈希,Laravel Mix可在webpack.mix.js中添加version()方法,Vite默认开启构建资源哈希,避免浏览器加载旧资源。
    • 无痕模式仍展示旧内容:确认是否配置了CDN服务,登录CDN控制台提交全站缓存刷新即可。
  • 排查Web服务器页面缓存配置
    若Nginx/Apache配置了fastcgi_cache、proxy_cache等服务端页面缓存规则,会直接返回已缓存的页面内容不经过Laravel处理。
    修复操作:清理web服务对应的缓存目录文件,或重启web服务生效。
  • 排查缓存驱动与权限问题
    1. 若使用Redis等内存作为缓存驱动,可清空缓存验证(生产环境需确认Redis无其他业务数据再操作):
    php artisan cache:clear
    
    1. 确认storage、bootstrap/cache目录所属用户为web服务运行用户(通常为www-data),仅设置其他用户写入权限在安全配置严格的服务器上无法生效:
    sudo chown -R www-data:www-data storage bootstrap/cache
    
    1. 执行artisan缓存生成命令时需使用web运行用户执行,避免生成的缓存文件权限异常导致Laravel无法更新:
    sudo -u www-data php artisan optimize
    

内容的提问来源于stack exchange,提问作者Johnson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 12:15:01