类移动到主机时未发现错误


Class not found error when moving to host?

我正在尝试制作一个新的Facebook应用程序,并从Asmallorange获得托管。该应用程序在我运行PHP 5.5.14的本地环境中完美工作。

这个应用由由Composer导入并自动加载到我的应用中的包组成。

该应用本身是一个Slim应用程序,由Laravel的Eloquent ORM组成。我按照网上的教程来整合这两者,它在我的本地环境中运行得很好。

代码如下:

require 'vendor/autoload.php';  
use Illuminate'Database'Capsule'Manager as Capsule;  
$capsule = new Capsule; 
$capsule->addConnection(array(
    'driver'    => 'mysql',
    'host'      => 'localhost',
    'database'  => 'test',
    'username'  => 'test',
    'password'  => 'password',
    'charset'   => 'utf8',
    'collation' => 'utf8_unicode_ci',
    'prefix'    => ''
));
$capsule->bootEloquent();

它在我的本地环境中工作得很好。只是不在服务器上,并且出现以下错误:

PHP Fatal error:  Class 'Illuminate'Database'Capsule'Manager' not found in /home/moz/public_html/app/index.php

参照上面第2行。我到处都找遍了,还没找到解决办法。

检查部署工具是否上传了vendors/composer目录下的autoload_classmap.php文件。上传这个应该可以解决这个问题。

或者你可以让composer重新构建服务器上的autoload_classmap.php文件,在命令行中运行以下命令,从与composer相同的目录…

php composer dump-autoload