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

部署到Forge后Laravel Livewire报视图找不到错误如何解决

Laravel Livewire Forge部署视图不存在问题排查方案

问题基础情况

站点部署到DigitalOcean Forge服务器后提示Livewire视图不存在,本地环境运行正常。已执行常规artisan维护命令,本地核对过文件路径无拼写错误,组件均通过php artisan make:livewire官方命令生成,部署前20个提交节点曾修改组件名称、调整文件夹结构。
相关佐证截图:

  • 已执行的artisan命令:php artisan命令执行截图
  • 报错日志第一部分:站点报错日志1
  • 报错日志第二部分:站点报错日志2

按优先级排查解决

  • 优先排查大小写不匹配问题(90%同类问题根因)
    本地开发环境多为Windows/macOS,文件系统默认大小写不敏感,路径写错大小写依然可以正常加载;Forge服务器为Linux系统,文件路径严格区分大小写,之前调整过文件夹、组件名的场景极容易触发该问题。
    • SSH登录Forge服务器进入项目目录,执行find resources/views/livewire -type f列出所有Livewire视图文件的真实路径,和组件类render()方法中返回的视图路径逐字比对,包括文件夹名、文件名的大小写必须完全一致。Livewire默认规则下帕斯卡命名的组件类对应全小写+中划线连接的blade文件,例如FooBar.php组件对应foo-bar.blade.php视图。
    • 检查Git是否未提交大小写变更:Git默认开启core.ignorecase配置,仅修改文件/文件夹大小写的重命名操作不会被Git记录,服务器拉取代码后依然保留旧名称的文件。本地执行git config core.ignorecase false后,重新提交重命名的文件/文件夹,推送后重新部署即可。
  • 清理所有缓存并重启PHP进程
    仅执行常规artisan缓存清理可能无法覆盖旧缓存、OPcache残留,按顺序执行以下命令:
    # 手动删除所有框架缓存文件
    rm -rf bootstrap/cache/*.php
    # 清理各类缓存
    php artisan view:clear
    php artisan config:clear
    php artisan route:clear
    php artisan cache:clear
    # 重新生成Livewire组件发现清单、类加载映射
    php artisan livewire:discover
    composer dump-autoload
    # 重启PHP-FPM清空OPcache(版本号替换为服务器实际使用的PHP版本,例如8.2)
    sudo service php8.2-fpm restart
    
    执行完成后运行php artisan livewire:list,确认报错的组件出现在识别列表中。
  • 修正文件权限
    部署过程中如果文件权限配置错误,PHP进程无权限读取视图文件也会抛出“视图不存在”的错误,执行以下命令修正权限:
    # 将项目所有者调整为Forge默认运行用户
    sudo chown -R forge:www-data /home/forge/替换为你的项目实际路径
    # 给缓存、存储目录配置可读写权限
    sudo chmod -R 755 /home/forge/替换为你的项目实际路径/storage
    sudo chmod -R 755 /home/forge/替换为你的项目实际路径/bootstrap/cache
    
  • 核对Livewire配置
    如果之前发布过Livewire配置文件,检查config/livewire.php中class_namespace、view_path等配置项是否为旧的目录结构,若配置写死了调整前的路径,修正后重新部署即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 19:12:19