Laravel 10 要求 PHP ≥ 8.1 且 Composer ≥ 2.2,需验证版本并升级;推荐临时切换阿里云镜像;使用 composer create-project 创建项目,避免 laravel/new;注意常见错误如内存不足、缓存损坏或缺失 PHP 扩展。

确认 PHP 和 Composer 版本是否达标
Laravel 10 要求 PHP ≥ 8.1,且 Composer 必须是 2.2+;低于这两个版本,composer create-project 很可能静默失败(输出 Package operations: 0 installs, 0 updates, 0 removals 后直接退出)。运行以下命令验证:
-
php -v—— 看是否 ≥ 8.1 -
composer --version—— 看是否 ≥ 2.2.x
若 composer 是 2.1.x,必须先升级:composer self-update。别跳过这步——旧版 Composer 解析 Laravel 10 的依赖图会出错。
切阿里云镜像(临时、干净、可验证)
国内直连 packagist.org 极大概率卡在 Downloading https://packagist.org/packages.json。推荐用阿里云镜像,但别全局污染配置(尤其多人协作时):
- 临时生效(当前项目/当前 shell 有效):
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ - 验证是否生效:
composer diagnose,末尾应显示Repo.packagist.org: OK,而非Connection timeout - 如果报
zlib_decode(): data error,说明缓存残留,删掉~/.composer/cache/再重试
用 create-project 创建项目(不碰 laravel/new)
laravel new 依赖全局安装的 laravel/installer,版本滞后风险高,Laravel 10 刚发布时它常没同步更新。最稳妥的方式是:
composer create-project laravel/laravel myapp --prefer-dist --no-interaction
关键参数只有两个:
-
--prefer-dist:强制下载压缩包而非 git clone,快且省空间 -
--no-interaction:跳过交互式提问(如选择 Jetstream、Breeze),避免卡住或选错
执行后若卡在某个包下载,不是网络问题就是镜像没生效,回退检查上一步。
常见失败信号与快速定位点
安装中途失败,先看错误关键词:
-
proc_open() fork failed→ PHP 内存不足,改php.ini中的memory_limit至512M或1G -
zlib_decode(): data error→ 镜像未切干净或缓存损坏,删~/.composer/cache/+ 重跑 -
Class 'PDO' not found或extension mbstring not loaded→ PHP 缺扩展,按 Laravel 10 强制列表补全(ctype、mbstring、openssl等共 11 个)
真正容易被忽略的是:哪怕 Composer 安装成功,php artisan serve 启动失败,大概率是 PHP 扩展没启全——别只盯着 Composer 报错,要顺手跑一遍 php -m | grep -E 'pdo|mbstring|xml'。


















