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

Laravel 8部署Hostinger后提示Target class控制器不存在如何解决?

排查修复步骤

1. 优先检查大小写匹配问题

Hostinger使用Linux系统,大小写敏感,而本地Windows/macOS环境默认大小写不敏感,这是最常见的诱因:

  • 确认控制器目录名称大小写:报错路径为backend\BrandController,检查app/Http/Controllers/下的目录是backend(全小写)还是Backend(首字母大写),必须和路由、命名空间中的写法完全一致
  • 确认控制器文件名:必须为BrandController.php,和类名完全匹配,首字母大写
  • 确认控制器顶部命名空间:和目录结构完全匹配,比如目录是Backend的话,命名空间必须写namespace App\Http\Controllers\Backend;

2. 清除Laravel缓存

部署后旧的路由、配置缓存会导致配置修改不生效:

  • 如果你可以在Hostinger上执行命令,依次运行:
php artisan route:clear
php artisan config:clear
php artisan cache:clear
  • 无法执行命令的话,直接删除bootstrap/cache/目录下除.gitignore外的所有文件即可

3. 重新生成Composer自动加载映射

上传文件可能导致类映射不匹配,执行命令重新生成:

composer dump-autoload

如果无法执行命令,可以重新上传vendor/composer/目录下的所有文件

4. 验证路由写法匹配

  • 如果你用的是字符串格式路由(比如Route::get('/brand', 'backend\BrandController@index')),确认路径大小写和目录完全匹配
  • 如果你用的是类名格式路由(比如Route::get('/brand', [BrandController::class, 'index'])),确认顶部已经引入了正确的控制器:use App\Http\Controllers\Backend\BrandController;,路径大小写完全匹配

5. 检查文件权限

确认app/Http/Controllers/目录权限为755,目录下的所有控制器文件权限为644,权限不足会导致系统无法读取控制器文件,误判为不存在

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 11:21:02