Laravel 5 在 AWS 上找不到类 'Collective\Html\HtmlServiceProvider'。

11 浏览
0 Comments

Laravel 5 在 AWS 上找不到类 'Collective\Html\HtmlServiceProvider'。

我知道有很多其他的问题与同样的错误存在,比如:Class 'Illuminate\Html\HtmlServiceProvider' not found Laravel 5

我的问题是我已经按照建议的步骤在本地(XAMPP)上解决了这个问题,而且没有任何问题。但是当我部署到我的AWS ubuntu服务器(nginx)时,问题就出现了。我按照常规的指示进行了操作:http://laravelcollective.com/docs/5.1/html#installation

当我从本地进行了git pull后,我的providers和aliases已经添加了。也许这个文件应该被gitignore,并且在服务器上手动更改?

接下来,将新的provider添加到config/app.php的providers数组中:
  'providers' => [
    // ...
    Collective\Html\HtmlServiceProvider::class,
    // ...
  ],
最后,将两个类别名添加到config/app.php的aliases数组中:
  'aliases' => [
    // ...
      'Form' => Collective\Html\FormFacade::class,
      'Html' => Collective\Html\HtmlFacade::class,
    // ...
  ],

然后我手动添加了:

首先通过Composer安装这个包。编辑你的项目的composer.json文件,以要求laravelcollective/html。
"require": {
    "laravelcollective/html": "5.1.*"
}

最后,我执行了:

composer.phar update

而正是运行这个命令导致了错误:

PHP Warning:  Module 'mcrypt' already loaded in Unknown on line 0
> php artisan clear-compiled
PHP Warning:  Module 'mcrypt' already loaded in Unknown on line 0
PHP Fatal error:  Class 'Collective\Html\HtmlServiceProvider' not found in /usr/share/nginx/html/cbt/vendor/compiled.php on line 6
  [Symfony\Component\Debug\Exception\FatalErrorException]
  Class 'Collective\Html\HtmlServiceProvider' not found
命令php artisan clear-compiled在pre-update-cmd事件处理中返回了一个错误
  [RuntimeException]
  错误输出:PHP Warning:  Module 'mcrypt' already loaded in Unknown on line 0
  PHP Fatal error:  Class 'Collective\Html\HtmlServiceProvider' not found in /usr/share/nginx/html/cbt/vendor/compiled.php on line
update [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--lock] [--no-plugins] [--no-custom-installers] [--no-auties] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [--ignore-platform-reqs] [--prefer-stable] [--prefer-lowest] [packages1] ...

然后我尝试运行php artisan clear-compiled,看是否有任何效果,结果是:

PHP Warning:  Module 'mcrypt' already loaded in Unknown on line 0
PHP Fatal error:  Class 'Collective\Html\HtmlServiceProvider' not found in /usr/share/nginx/html/cbt/vendor/compiled.php on line 6716
  [Symfony\Component\Debug\Exception\FatalErrorException]
  Class 'Collective\Html\HtmlServiceProvider' not found

我知道我的nginx ubuntu环境与Windows的xampp环境不同,但我仍然不确定为什么按照Laravel提供的添加方法似乎不起作用。非常感谢您对此的建议。

谢谢!

0