Windows环境下Laravel 8执行post-autoload-dump事件返回错误码255求助
解决方案
1 解决php.ini无权限修改问题
- 右键点击你常用的文本编辑器(比如记事本、VS Code),选择以管理员身份运行
- 在编辑器中打开报错提示的ini文件:
C:\Program Files\PHP\v7.4\php.ini - 查找
;extension=fileinfo配置项,删除行首的分号启用扩展,保存文件 - 若找不到该配置项,可直接在文件末尾新增一行
extension=fileinfo,保存前需确认PHP扩展目录(ext文件夹)中存在php_fileinfo.dll文件,缺失可到PHP官方下载对应7.4版本的扩展文件放入ext目录
如果还是无法修改Program Files目录下的文件,可直接将整个PHP文件夹移动到无权限限制的目录(比如C:\PHP),然后修改系统环境变量中的PHP路径指向新目录,再修改新目录下的php.ini文件即可。
2 验证扩展是否生效
打开命令行执行命令:php -m
查看返回的扩展列表中是否存在fileinfo,存在即说明扩展启用成功。
3 修复现有Laravel项目
进入你的项目根目录,执行以下操作:
- 删除项目下的
vendor文件夹和composer.lock文件 - 执行正常安装命令,不要加跳过平台检查的参数:
composer install
你之前遇到的
post-autoload-dump事件返回错误码255,本质是跳过环境检查后依赖安装完成,但运行artisan命令时缺少必要的fileinfo扩展导致的,修复扩展后重新安装依赖即可解决该问题。
额外排查项
如果修改完ini后扩展还是不生效,可执行命令php --ini查看CLI模式实际加载的ini文件路径,确认你修改的是实际加载的配置文件,避免出现CLI和Web端用不同配置文件的问题。
内容的提问来源于stack exchange,提问作者Jérôme
相关产品推荐
相关产品推荐

