Codeigniter,URL路由失败


Codeigniter, URL Routing is failing

使用我继承的代码点火器代码库,我试图启动并运行url路由,但它似乎只抛出404个错误。

当我转到http://root_url/index.php时,它正好命中默认的控制器/方法,但是当我请求任何特定的控制器/操作时,它404。

如果我请求http://root_url/index.php/auth/login,apache将抛出

File does not exist: /var/www/ci_project/index.php/auth/login, referer: http://root_url/index.php

看起来apache正试图请求一个显然不存在的文件夹,而不是向index.php 提供auth/login的uri段

注:

  • 我没有使用任何htaccess文件(没有htaccess文件,代码库应该可以工作)
  • mod_rewrite已启用并被php检测到,尽管我怀疑问题是在访问php之前发生的
  • 我使用debian(w/apache2.2.2),而不是ubuntu(2.2.14)
  • 查询字符串参数工作正常,只是URI段
  • 我并没有试图删除index.php,只是让基本的控制器url匹配工作

事实证明,这是debian上的一个apache配置问题,与代码点火器无关。

我对apache进行了清除/重新安装,这似乎解决了问题。

sudo apt-get purge apache2 apache2-utils apache2.2-bin apache2-common
sudo apt-get autoremove --purge
sudo apt-get install apache2
sudo apt-get install libapache2-mod-php5

关于问题发生的原因,我唯一的猜测是安装了libapache2-mod-php5filter(直到清除发生我才意识到)而不是libapache2-mod-php5包,它根本没有正确处理url。

谢谢你的帮助。