Prestashop使用1-click upgrade从1.7.5升级1.7.8时出现文件提取报错
Prestashop 1.7.5 升级 1.7.8 路径不可写报错修复方案
你遇到的报错信息如下:
无法从备份中提取 vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/profiler.xml 文件,可能原因为目标路径不可写。
该报错核心为升级过程中1-click upgrade工具没有目标路径的写入权限,按以下步骤操作即可解决:
- 先终止当前未完成的升级进程,清空升级工具的临时文件与站点缓存:
删除modules/autoupgrade/tmp/目录下所有内容,再删除var/cache/prod/、var/cache/dev/目录下所有缓存文件。 - 重置站点全目录的权限与所属权,需匹配你的Web服务运行用户(常见为
www-data、apache、nginx),在站点根目录执行以下命令:# 所有目录权限设为755 find . -type d -exec chmod 755 {} \; # 所有文件权限设为644 find . -type f -exec chmod 644 {} \; # 修正目录所属用户组,将www-data替换为你环境实际的Web运行用户与用户组 chown -R www-data:www-data . - 单独确认
vendor/目录的权限设置正常,如果你此前手动修改过vendor目录权限,或者使用root用户执行过composer操作,需要单独对该目录执行上述权限修正操作。 - 重新进入1-click upgrade模块的升级页面,先运行前置环境检查,确认所有权限项全部检测通过后,再重新启动升级流程即可。
你当前使用的PHP7.4版本完全兼容Prestashop1.7.8,无需调整PHP版本,升级完成后如果出现页面异常,清空一次站点缓存即可恢复正常。
内容的提问来源于stack exchange,提问作者wincloud
相关产品推荐
相关产品推荐

