Composer Autoload.php 未在命名空间中加载并且 类 在实时托管中

Composer Autoload.php not loading in Namespaces and Classes on live hosting

我有一个简单的 PHP 网络应用程序,其结构如下:

/         (composer.json .htaccess ...)  
/Core/    (Router.php, Controller.php ...)    
/App/     (/Controllers, /Models, /Views ...)    
/Public/  (index.php ...)  
/Vendor/  (autoload.php /composer ...)  

代码在我的本地服务器上运行没有问题。

当我将它复制到实时服务器并对路由中的 .htaccess 进行必要的更改时,我收到以下错误:致命错误:Class 'Core\Router' not found in.... 我尝试了 3 个不同的主机,但没有成功。

问题似乎与未在名称空间中加载的作曲家自动加载功能和使用 psr-4 类 有关。我在我的 composer.json 文件中设置了这个:

{
"autoload": {
    "psr-4": {
         "Core\": "Core/",
         "App\": "App/"
    }
}

我项目的代码在 GitHub

https://github.com/imoprojects/upbook

我是在 MVC 结构中编程的新手,也是以这种方式使用 composer 的新手。

如果有人可以帮助解决可能发生的事情,我将不胜感激。

干杯, 伊恩

你这样配置:

"Core\": "Core/",

...但是您的 类 位于:

core

这仅适用于不区分大小写的文件系统。