

新闻资讯
行业动态根本原因是Windows默认禁用符号链接权限,需启用开发者模式或配置组策略;推荐启用开发者模式,重启后即可正常创建vendor/bin软链接,其他方法均为临时妥协。
Windows 下 Composer 安装依赖时提示 Symlink creation failed,根本原因是默认不启用开发者模式且 NTFS 符号链接权限被禁用——不是 Composer 本身的问题,而是系统级限制。
Composer 在 Windows 上尝试用 mklink 创建软链接(例如 vendor/bin 中的可执行文件),但普通用户账户默认无权执行该操作。需手动验证权限:
mklink /D test-link .若提示“你没有足够的权限执行此操作”,说明符号链接被禁用
gpedit.msc → 计算机配置 → Windows 设置 → 安全设置 → 本地策略 → 用户权限分配 → “创建符号链接”,确认你的用户或组是否在列表中gpedit.msc?只能通过启用“开发者模式”间接获得权限(见下一条)这是最简单、兼容性最好的方案,启用后系统会自动赋予当前用户创建符号链接的权限,无需改组策略或提权运行 Composer:
1)composer install 或 composer update 就能正常创建 vendor/bin 下的符号链接了vendor/ 和 composer.lock 后重试如果无法启用开发者模式(如企业锁死策略),可用 --no-bin-links 跳过创建 vendor/bin 中的符号链接,但会带来副作用:
composer install --no-bin-links或在
composer.json 中添加:"config": { "bin-dir": "bin/" }(此时 bin 文件会被复制而非链接)phpunit)无法直接调用;每次 composer update 都会重新复制二进制文件,占用更多磁盘空间;某些工具(如 Laravel Pint)依赖符号链接行为,可能异常composer.json
很多教程建议“用管理员 CMD 运行 Composer”,这看似能绕过权限错误,但实际埋下隐患:
vendor/
composer dump-autoload 等命令可能因权限不一致失败开发者模式是 Windows 下 Composer 符号链接问题的根治点,其他方法都是妥协。但要注意:WSL2 环境中不存在此问题——因为符号链接由 Linux 内核处理,与 Windows 权限无关。如果频繁遇到这类限制,值得考虑把 PHP 开发环境迁移到 WSL2。