Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP Codeigniter控制器和模型文件名问题_Php_Apache_Codeigniter - Fatal编程技术网

PHP Codeigniter控制器和模型文件名问题

PHP Codeigniter控制器和模型文件名问题,php,apache,codeigniter,Php,Apache,Codeigniter,我有一个CodeIgniter项目,当我在本地机器上工作时,一切都很好。 当我将项目上传到服务器时,除了默认控制器之外,其他控制器突然停止工作。我花了几个小时搜索这个问题,发现我的控制器和模型不工作,因为它们的文件名不是大写字母 例如: controllers/test.php - does not works controllers/Test.php - works 模型也是如此,我认为这是apache的配置问题 我有: Ubuntu 14.04 Server version: Apache

我有一个CodeIgniter项目,当我在本地机器上工作时,一切都很好。 当我将项目上传到服务器时,除了默认控制器之外,其他控制器突然停止工作。我花了几个小时搜索这个问题,发现我的控制器和模型不工作,因为它们的文件名不是大写字母

例如:

controllers/test.php - does not works
controllers/Test.php - works
模型也是如此,我认为这是apache的配置问题

我有:

Ubuntu 14.04
Server version: Apache/2.4.7 (Ubuntu)
PHP 5.5.9-1ubuntu4.3 (cli) (built: Jul  7 2014 16:36:58) 
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies

有什么想法吗?

这不是配置问题。这根本不是一个问题——只是大多数Linux文件系统如何工作

在Windows下,根据安装时的配置,在MacOSX上,“test.php”和“test.php”之间没有区别,它们是同一个文件。 另一方面,使用UNIX风格的文件系统,您可以在同一目录中同时使用“test.php”和“test.php”

过去,它可能在CentOS和Debian下对您有效,但这是因为您使用了旧版本的CodeIgniter,它用于查找所有小写文件名


您现在使用的CodeIgniter 3.0-dev要求所有类文件名都以大写字母开头。升级说明中对此进行了解释。

首先想到的是:您是否在Windows上开发(例如使用WAMP)并拥有Linux服务器?我们有过几次这样的问题,因为Windows不关心这个问题。正如我写的,我把Ubuntu 14.04(Linux)Ubuntu作为本地机器@如果有帮助的话,请联系digitalocean。我的本地版本是OsX,但这并不重要。我有相同的样板文件,可以在我使用过的所有服务器上正常工作(CentOs、Debian和Windows)。我认为问题在于Ubuntu或Ubuntu的版本。