Zend framework2 Zend Framework 2-将proeject部署到web服务器

Zend framework2 Zend Framework 2-将proeject部署到web服务器,zend-framework2,Zend Framework2,我正在尝试将我的ZF2项目移动到web服务器。我从本地计算机复制了以下内容:/config、/data、/module、/public、/vendor和init_autoloader.php。 Apache虚拟主机设置为指向/public文件夹。当我尝试运行应用程序时,浏览器返回错误 致命错误:未捕获异常“Zend\Loader\exception\InvalidArgumentException”,消息“Autoloader class Zend\Loader\StandardAutoload

我正在尝试将我的ZF2项目移动到web服务器。我从本地计算机复制了以下内容:/config、/data、/module、/public、/vendor和init_autoloader.php。 Apache虚拟主机设置为指向/public文件夹。当我尝试运行应用程序时,浏览器返回错误

致命错误:未捕获异常“Zend\Loader\exception\InvalidArgumentException”,消息“Autoloader class Zend\Loader\StandardAutoloader必须在/var/www/vhosts/../vendor/zendframework/zendframework/library/Zend/Loader/AutoloaderFactory中实现Zend\Loader\SplAutoloader”。php:91堆栈跟踪: #0/var/www/vhosts/../vendor/zendframework/zendframework/library/Zend/ModuleManager/Listener/AutoloaderListener.php(34):Zend\Loader\AutoloaderFactory::factory(数组) #1[内部函数]:Zend\ModuleManager\Listener\AutoloaderListener->\uu调用(对象(Zend\ModuleManager\ModuleEvent)) #2/var/www/vhosts/../vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(468):调用用户函数(Object(Zend\ModuleManager\Listener\autoloader-Listener),Object(Zend\ModuleManager\ModuleEvent)) #第91行/var/www/vhosts/../vendor/zendframework/zendframework/library/Zend/EventManag中的/var/www/vhosts/../vendor/zendframework/zendframework/library/Zend/Loader/AutoloaderFactory.php


有什么建议吗?谢谢。

此错误是由于服务器上的旧php版本造成的。5.3.3是不够的。您应注意以下限制:

2.3.0 requires php >=5.3.23
2.4.0 requires php >=5.3.23
您可以在php5.3.3上使用zend framework 2.2.10。编辑您的
应用程序/composer.json

"require": {
        "php": ">=5.3.3",
        "zendframework/zendframework": "~2.2"
    }
然后运行php composer.phar安装,它将重新安装您的框架:

>php composer.phar install
Loading composer repositories with package information
Installing dependencies (including require-dev)
  - Removing zendframework/zendframework (2.4.0)
  - Installing zendframework/zendframework (2.2.10)
    Downloading: 100%

Writing lock file
Generating autoload files

php版本是否相同?在移动或迁移应用程序之前,请确保所有这些都已处理完毕。在linux命令行或windows的launch cmd上发布>php-v并执行相同的操作,可能是它的php.exe-v,匹配版本并尝试一下。完成此操作后,请确保重新启动apache.Php版本,本地版本为5.4.24;web服务器5.3.3。我只是通过Composer在本地安装Skeleton应用程序,然后上传到服务器上。我也犯了同样的错误。我注意到/public文件夹中的.htaccess文件不存在。这个文件是必需的吗?这绝对是必需的。大多数框架中都有.htacces,可以按照自己的方式重新编写URL。