该帖子由360Magento的技术人员进行了验证,以指导用户如何使用命令行和composer升级Magento 2版本。让我们逐步遵循本指南。

更新Magento 2

步骤1:备份网站

为您的Magento 2站点创建备份非常紧急且必要,如果站点上有任何更改或中断,您可以通过备份管理保护所有数据免遭丢失。请按照本指南备份您的Magento 2网站

步骤2:开启维护模式

升级时,应将网站置于维护模式。要启用维护模式:

php bin/magento maintenance:enable

它将创建一个新文件var/.maintenance.flag。如果无法禁用维护模式,则可以删除此文件[记住!]

步骤3:升级至Magento 2

在这种情况下,我将升级到Magento版本2.2.1。在Github版本中查看最新版本

步骤3.1拉包

terminal/command-prompt首先使用以下命令:

composer require magento/product-community-edition 2.2.1 --no-update
composer update

可能会要求您输入用户名和密码

要生成公钥/私钥对,进入Access Keys页面并点击“Create A New Access Key”

步骤3.2刷新缓存

现在该删除缓存和generation了。在根文件夹中运行以下命令行:

rm -rf var/cache/*
rm -rf var/page_cache/*
rm -rf var/generation/*
注意:
  • 您或许安装了Memcached,Redis缓存...,应手动刷新这些缓存。

步骤3.3运行Upgrade升级Magento

运行Upgrade模块,数据库架构

php bin/magento setup:upgrade

步骤3.4运行complie,reindex

升级后,应运行编译和重新索引以提高性能。

php bin/magento setup:di:compile
php bin/magento indexer:reindex
注意:
  • 在Ubuntu / Debian Linux中,遇到权限问题时,请记住sudo在每个命令的开头插入sudo composer update

步骤3.5禁用维护模式

您已在步骤2中打开了维护模式,现在必须将其关闭。运行以下命令行将其关闭:

php bin/magento maintenance:disable

步骤4:检查当前的Magento 2版本

接下来,您可以通过运行命令检查Magento 2的版本。

php bin/magento --version

如果系统显示缓存写入权限错误,请添加以下命令以对pub和var目录授予写入权限:

chmod -R 777 pub var

常见问题

问:升级后我无法访问前端?

您可能会收到以下消息: We're sorry, an error has occurred while generating this email.

回答:

那是因为Web服务器的读写权限。运行以下命令来解决该问题:

 find var vendor pub/static pub/media app/etc -type f -exec chmod u+w {} \; && find var vendor pub/static pub/media app/etc -type d -exec chmod u+w {} \; && chmod u+x bin/magento

再次刷新缓存:

rm -rf var/cache/*
rm -rf var/page_cache/*
rm -rf var/generation/*

升级Magento 2服务

360Magento提供升级到最新的Magento 2版本,请与我们联系以获取更多信息。

这就是通过命令行和composer升级/更新Magento 2版本的所有操作。感谢您的阅读,如果有任何麻烦,请与我们联系