最可靠安装方式是用 composer create-project,它自动拉取 appstarter、装依赖、生成 autoloader 并运行迁移;需确保 Composer ≥2.2、PHP ≥8.1;安装后须复制 .env、配置 baseURL 和开发环境;可用 spark serve 快速启动内置服务器。

直接用 composer create-project 安装 CI4 最可靠
CodeIgniter 4 官方不提供 zip 包下载,也不推荐手动下载源码部署。唯一受支持、能保证依赖完整和 autoloader 正确生成的方式,就是用 composer create-project。跳过这步改用 git clone 或复制文件,大概率会遇到 Class 'CodeIgniter\CodeIgniter' not found 或路由无法加载等问题。
执行前确认:composer 已安装且版本 ≥ 2.2(CI4.4+ 要求 Composer 2.2+),PHP 版本 ≥ 8.1(CI4.5 起强制要求)。
composer create-project codeigniter4/appstarter myapp
其中 myapp 是项目目录名,可按需替换。该命令会自动:拉取 codeigniter4/appstarter(含预置基础结构 + CI4 核心)、安装所有 require 依赖、生成 vendor/autoload.php、运行 php spark migrate(如启用迁移)。
安装后必须改写 .env 文件并启用开发模式
新项目默认带 .env.example,但不会自动重命名为 .env,也不会自动开启错误显示——这意味着你访问首页只看到空白页或 “404 Not Found”,却看不到任何报错信息。
- 把
.env.example复制为.env(注意隐藏文件名) - 取消注释并修改
app.baseURL = 'http://localhost/myapp/'(根据你的实际路径调整,本地开发常用http://localhost/或配合虚拟主机) - 确保
CI_ENVIRONMENT = development,否则日志不写、错误不抛出 - 检查
database.default.hostname等数据库配置是否已填(即使暂不连库,也别留空)
改完立刻生效,无需重启服务器。如果仍 500,直接看 PHP 错误日志或在浏览器打开 public/index.php 查原始报错。
用内置 server 启动比配 Apache/Nginx 更快验证环境
刚装完不想折腾 vhost?spark serve 就是为此设计的:
cd myapp php spark serve
它会启动 PHP 内置服务器,默认监听 http://localhost:8080。注意三点:
- 必须在项目根目录(含
spark文件)下运行,不是public/目录 - 该命令会自动读取
.env中的app.baseURL并校验路径,若不匹配会提示 “Base URL does not match” - 不支持重写规则(如移除
index.php),所以路由必须走标准格式,例如/public/index.php/news;如需 clean URL,还是得配 Apache 的.htaccess或 Nginx 的try_files
常见失败点:权限、扩展缺失、时区未设
即使 composer create-project 成功,运行时仍可能卡住。高频原因有:
-
vendor/或writable/目录无写入权限(Linux/macOS 下常因用户组错乱导致,用chown -R $USER:$USER writable/修复) - PHP 缺少
mbstring、intl、curl扩展(CI4 启动即检查,缺一则报Required extension "xxx" is missing) -
php.ini中未设置date.timezone(错误提示为A non well formed numeric value encountered或时间类初始化失败) - 使用了 Windows Subsystem for Linux(WSL)但未关闭 Windows 防火墙,导致
spark serve绑定失败
最省事的排查方式:运行 php spark list。如果命令能列出所有可用指令,说明框架核心已加载成功;如果报错,错误信息一定指向上述某一项。










