优先换阿里云镜像并设process-timeout=1800、http-basic-timeout=300,严格满足repo.packagist键名单数、第二参数为composer、URL以https://开头且末尾带/,验证输出必须为{"type": "composer", "url": "https://mirrors.aliyun.com/composer/"}。

检查并切换 Composer 国内镜像源
Composer 默认从国外 Packagist 拉包,容易因 DNS、GFW 或连接不稳定导致超时。 执行以下命令,永久启用阿里云镜像(稳定且同步及时):composer config -g repo.packagist https://mirrors.aliyun.com/composer/
验证是否生效:composer config -g repo.packagist
应输出 https://mirrors.aliyun.com/composer/。 若已存在项目,再进项目目录运行:composer clear-cache
延长 Composer 超时与重试机制
默认超时为 300 秒(5 分钟),对大依赖(如 Laravel + Bootstrap + Pest)可能不够。 在项目根目录或全局配置中增加:composer config -g process-timeout 1800
composer config -g github-protocols https
composer config -g bitbucket-protocols https
同时启用自动重试(Composer 2.2+ 支持):composer config -g github-oauth.github.com "your_token"
(可选,有 GitHub Token 时能显著提升下载稳定性)安装时跳过不必要的步骤
首次安装 Laravel 时,避免带开发依赖和插件扫描,加快流程:composer create-project laravel/laravel myapp --no-interaction --no-dev --prefer-dist
说明:- --no-interaction:跳过交互式提示
- --no-dev:不安装 phpunit、pest、larastan 等开发依赖(本地调试再装)
- --prefer-dist:优先用压缩包而非 Git 克隆,更快更轻量
确认 PHP 环境与扩展就绪
超时有时是假象——实际是 PHP 扩展缺失导致 Composer 启动失败或卡死。 运行以下命令快速验证:php -v
php -m | grep -E 'openssl|mbstring|curl|json|xml|zip'
缺任何一项都可能导致 Composer 卡在「Resolving packages...」阶段。 Windows 用户若用 XAMPP/WAMP,请确保勾选了 zip 扩展;macOS 用 Homebrew 安装 PHP 后,需手动启用 opcache 和 zip。 不复杂但容易忽略


















