CodeIgniter路由配置异常:localhost/a返回Page Not Found求助
CodeIgniter路由访问404问题排查步骤
检查服务器重写规则
- 确认Apache已开启
mod_rewrite模块,Nginx配置了正确的重写规则 - Apache环境下,项目根目录的
.htaccess需包含以下内容:RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L] - Nginx环境下,在server配置块中添加:
location / { try_files $uri $uri/ /index.php?$query_string; }
- 确认Apache已开启
核对CodeIgniter核心配置
- 打开
app/Config/App.php,确认$baseURL设置为http://localhost/(注意保留末尾斜杠) - 将
$indexPage设为空字符串:public $indexPage = '';,避免URL中需要携带index.php
- 打开
确保路由配置生效
- 确认修改的是
app/Config/Routes.php文件,检查配置代码无语法错误 - 删除
writable/cache/目录下的所有文件,清除框架缓存,避免旧配置干扰
- 确认修改的是
检查服务器根目录指向
- CodeIgniter 4的入口文件位于
public目录,需确保服务器(或虚拟主机)的根目录指向项目的public文件夹,否则路由规则无法正常生效
- CodeIgniter 4的入口文件位于
内容的提问来源于stack exchange,提问作者ALI SISWANTORO
相关产品推荐
相关产品推荐

