Wenzi

ci框架在去掉index.php时导致404的解决方案

蚊子前端博客
发布于 2017/03/21 00:00
ci框架的URL中默认是带有index.php的,通常我们会去掉这个index.php,不过按照官方的方法,有时会导致只能访问首页,其他控制器全部为404

ci框架的URL中默认是带有index.php的,通常我们会去掉这个index.php,不过按照官方的方法,有时会导致只能访问首页,其他控制器全部为404。这里我们就说下解决方案,可以按照步骤分别进行检查。

我的安装环境是wampserver。

  1. 打开wampserver\wamp\bin\apache\apache2.4.9\conf\httpd.conf文件,将mod_rewrite.so模块打开(去掉前面的#);同时把AllowOverride None修改为AllowOverride All
  2. 重启wampserver服务器;
  3. 在项目的根目录下创建.htaccess文件,将以下的代码粘贴到文件中并保存;
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

刷新浏览器,看看是否可以正常访问了。

在官方文档的讨论中,有人表示需要把RewriteRule ^(.*)$ index.php/$1 [L]修改为RewriteRule ^(.*)$ index.php?$1 [L],但是,经过我的测试,发现没什么区别,都能访问。

标签:ci
阅读(995)
Simple Empty
No data