XAMPP环境下CodeIgniter的base_url修改后不生效问题
CodeIgniter修改base_url不生效排查方案
- 确认修改的是生效的配置文件
CI3版本默认全局配置路径为application/config/config.php,如果项目做了多环境适配,会优先加载对应环境目录下的配置,比如application/config/development/config.php,需要修改对应环境下的base_url配置才会生效;CI4版本默认优先读取根目录.env文件里的app.baseURL配置,仅修改app/Config/App.php不会生效。 - 检查是否存在配置覆盖逻辑
很多线上项目会在入口文件index.php或者公共全局加载文件中写死base_url,或者编写了自动根据访问域名匹配base_url的逻辑,这类代码的优先级高于配置文件,需要修改或者注释对应逻辑才能让配置文件的修改生效。 - 清理项目缓存
如果项目开启了配置缓存,修改配置后需要清空缓存才能生效,直接删除application/cache(CI3)或者writable/cache(CI4)目录下的所有缓存文件即可。 - 确认配置修改已保存同步
检查你修改的配置文件是否已正确保存,避免出现修改了其他路径的同名配置文件、实际XAMPP运行的站点目录下配置文件未更新的问题。 - 排除前端缓存干扰
可以在控制器方法第一行添加代码var_dump(base_url());die;,直接打印base_url的返回值,确认是后端配置未生效还是前端页面缓存了旧的渲染结果。
内容的提问来源于stack exchange,提问作者Armughan Ahmad
相关产品推荐
相关产品推荐

