【问题标题】:ReflectionException in Route.php Class Controller does not existRoute.php 类控制器中的 ReflectionException 不存在
【发布时间】:2017-12-02 15:23:57
【问题描述】:

我在 centos 5.8 服务器中使用 Laravel 5.2 并收到以下错误:

ReflectionException in Route.php line 280:
Class xxxx\Http\Controllers\CpanelController does not exist


ErrorException in ClassLoader.php line 412: include(/home/xxxx/vendor/composer/../../app/Http/Controllers/CpanelController.php): failed to open stream: Permission denied

我正在尝试:

php artisan cache:clear

chmod -R 777 storage

composer dump-autoload

但问题依然存在

【问题讨论】:

  • 代替chmod -R 777 storage试试chmod -R 777 your_root_dir
  • 你检查过命名空间吗?或者也许你有一些命名空间不同的组路由?!
  • 你不应该用 777 chmod 你的根目录,这是修复错误的坏方法,你需要尝试 chmod 777 vendor/vendor/composer 文件夹,重新检查你的命名空间
  • 谢谢。我处理了供应商、供应商/作曲家和主文件夹中的 chmod 权限,但仍然没有。我检查了控制器,它位于正确的位置。还有其他建议吗?
  • 检查控制器文件的拼写和大小写。

标签: laravel laravel-5 laravel-5.2


【解决方案1】:

Laravel 在找不到 String 指向的类时会通过反射异常。

有几点要记住。

  1. 确保您的类中有一个正确的命名空间供您尝试访问。
  2. 检查控制器文件的大小写。大写和小写在 WINDOWS 中无关紧要,但在 Linux/CentOS 中不起作用。
  3. 运行composer update
  4. 将整个目录的权限设置为 777,文件的权限为 644

【讨论】:

    猜你喜欢
    • 2014-05-29
    • 2019-02-20
    • 1970-01-01
    • 2017-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-05
    • 1970-01-01
    相关资源
    最近更新 更多