You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

能否直接将Magento 2.1.5升级至2.3?求Windows环境升级流程

从Magento 2.1.5升级到2.3.x的完整实操指南

先给你明确答案:能直接升级,但得先搞定PHP版本!

你的就绪检查报错完全是因为PHP版本不兼容——Magento 2.3要求PHP 7.1.3及以上(7.1.3、7.2、7.3都可以),而你当前用的是7.0.6,不符合最低要求。先把PHP升级到符合标准的版本,再进行Magento升级就没问题了。

第一步:Windows本地环境升级PHP(用XAMPP/WAMP举例)

既然是在Windows本地跑,用集成环境升级最省心:

  • 先把当前的php.ini备份好,毕竟里面可能有你之前调过的配置,别弄丢了
  • 下载对应版本的PHP(推荐选7.2,和Magento 2.3兼容性最好),注意要和你的Web服务器(Apache/Nginx)的架构一致(32位/64位)
  • 关掉当前的Web服务器和MySQL服务,避免冲突
  • 要么替换集成环境里的PHP目录,要么安装新的PHP版本后,把Web服务器的PHP路径指向新的目录
  • 把备份的php.ini复制到新PHP目录里,记得检查并开启Magento必需的扩展:intlsoapgd2mbstring这些一个都不能少
  • 重启Web服务器,打开命令行敲php -v确认版本对不对,再用phpinfo()检查所有必需扩展都启用了

第二步:Magento升级的具体步骤(按顺序来!)

PHP版本搞定后,就可以正式升级Magento了,每一步都别跳:

1. 先备份!先备份!先备份!

重要的事情说三遍:

  • 用phpMyAdmin导出整个Magento数据库,或者用命令行:mysqldump -u 你的数据库用户名 -p 你的数据库名 > magento_backup.sql
  • 把整个Magento项目文件夹复制到一个安全的地方,比如D盘的备份文件夹里

2. 开启维护模式

进入Magento根目录,打开命令行执行:

php bin/magento maintenance:enable

这样升级过程中用户就看不到错误页面了。

3. 更新Composer配置

你可以直接编辑根目录的composer.json,把require里的magento/product-community-edition改成你要升级的2.3.x版本(比如2.3.7-p4,这是2.3系列最新的安全补丁版,推荐用这个)。

或者更省事的是直接用Composer命令:

composer require magento/product-community-edition=2.3.7-p4 --no-update

4. 执行Composer更新

这一步会下载所有需要的新版本依赖,耐心等就行:

composer update

如果遇到依赖冲突,跟着提示调整对应的包版本就好,一般都是因为有些旧扩展不兼容2.3,得升级那些扩展。

5. 升级数据库和静态内容

先升级数据库结构和数据:

php bin/magento setup:upgrade

然后部署静态内容(把en_US换成你商店用的语言代码,比如zh_CN):

php bin/magento setup:static-content:deploy -f en_US

-f是为了强制覆盖旧的静态文件。

6. 清理缓存和重建索引

这一步是为了让新的配置和内容生效:

php bin/magento cache:clean
php bin/magento cache:flush
php bin/magento indexer:reindex

7. 关闭维护模式

升级完成后,把维护模式关掉,网站就可以正常访问了:

php bin/magento maintenance:disable

最后提醒几个小细节

  • 升级完一定要去后台逛一圈,检查订单、产品、设置这些功能都正常不,前端页面也要测试一遍
  • 如果有自定义主题或者第三方扩展,得确认它们支持Magento 2.3,不然可能会出问题,必要时升级或者替换这些扩展
  • 如果Composer或者Magento命令提示内存不足,就在命令前面加内存限制:php -d memory_limit=2G bin/magento ...,把2G换成你机器能承受的大小就行

内容的提问来源于stack exchange,提问作者Narayan

火山引擎 最新活动