Php Silex can';找不到控制器类

Php Silex can';找不到控制器类,php,controller,silex,Php,Controller,Silex,项目目录结构 /composer.json /web/index.php /app/controller/IndexController.php composer.json { "require" : { "silex/silex": "*" }, "autoload": { "psr-0": { "": "./

项目目录结构

/composer.json
/web/index.php
/app/controller/IndexController.php 
composer.json

{
  "require" : {
    "silex/silex": "*"
  },
  "autoload": {
    "psr-0": {
            "": "./"
        }
  }
}
index.php

<?php

require_once __DIR__.'/../vendor/autoload.php';

use Silex\Application;

$app = new Application();
$app['debug'] = true;

$app->get('/', 'App\\Controller\\IndexController::getIndex');

$app->run();
从项目根目录中,我得到以下异常

InvalidArgumentException in ControllerResolver.php line 153:
Class "App\Controller\IndexController" does not exist.
in ControllerResolver.php line 153
at ControllerResolver->createController('App\Controller\IndexController::getIndex') in ControllerResolver.php line 80
at ControllerResolver->getController(object(Request)) in HttpKernel.php line 135
at HttpKernel->handleRaw(object(Request), '1') in HttpKernel.php line 68
at HttpKernel->handle(object(Request), '1', true) in Application.php line 581
at Application->handle(object(Request)) in Application.php line 558
at Application->run() in index.php line 12

这对我来说毫无意义。这个程序实际上在我的MacBook上本地运行得很好,但是当我将它部署到我的Ubuntu VPS时,我得到了上面的异常,尽管在两个环境中运行的代码是相同的。为什么Silex找不到我的控制器?

这是一个资本化问题。我的macbook有一个不区分大小写的文件系统,我的Linux VPS有一个区分大小写的文件系统,因此在部署到VPS时,我必须将项目中的目录大写,以便Silex能够正确解析控制器。

这是一个大写问题。我的macbook有一个不区分大小写的文件系统,我的Linux VPS有一个区分大小写的文件系统,因此在部署到VPS时,我必须将项目中的目录大写,以便Silex能够正确解析控制器。

这是一个大写问题。我的macbook有一个不区分大小写的文件系统,我的Linux VPS有一个区分大小写的文件系统,因此在部署到VPS时,我必须将项目中的目录大写,以便Silex能够正确解析控制器。

这是一个大写问题。我的macbook有一个不区分大小写的文件系统,而我的Linux VPS有一个区分大小写的文件系统,因此在部署到VPS时,我必须将项目中的目录大写,以便Silex能够正确解析控制器。

试试这个

"autoload" : {
    "psr-4" : {
        "App\\Controller\\" : "app/controller/"
    }
}
试试这个

"autoload" : {
    "psr-4" : {
        "App\\Controller\\" : "app/controller/"
    }
}
试试这个

"autoload" : {
    "psr-4" : {
        "App\\Controller\\" : "app/controller/"
    }
}
试试这个

"autoload" : {
    "psr-4" : {
        "App\\Controller\\" : "app/controller/"
    }
}

在我的例子中,我缺少
use-Symfony\Component\HttpFoundation\Request

发件人:

检查控制器是否具有以下功能:

使用Silex\应用程序

使用Symfony\Component\HttpFoundation\Request


在我的例子中,我缺少
use-Symfony\Component\HttpFoundation\Request

发件人:

检查控制器是否具有以下功能:

使用Silex\应用程序

使用Symfony\Component\HttpFoundation\Request


在我的例子中,我缺少
use-Symfony\Component\HttpFoundation\Request

发件人:

检查控制器是否具有以下功能:

使用Silex\应用程序

使用Symfony\Component\HttpFoundation\Request


在我的例子中,我缺少
use-Symfony\Component\HttpFoundation\Request

发件人:

检查控制器是否具有以下功能:

使用Silex\应用程序

使用Symfony\Component\HttpFoundation\Request