
Upgrade to Magento 2.3 – Common upgrade issues and walkthroughs
You will need (first) to install PHP7.1.3 | PHP7.2 in your system, to do so, follow those steps:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
# PHP Itself sudo apt-get update sudo add-apt-repository ppa:ondrej/php sudo apt-get install python-software-properties sudo apt-get update sudo apt-get install php7.2 # PHP Modules sudo apt-get install php7.2-curl php7.2-gd php7.2-json php7.2-mbstring php7.2-bcmath php7.2-dom php7.2-ext-intl php7.2-intl php7.2-soap php7.2-zip php7.2-mysql # PHP Modules for Apache sudo apt-get install libapache2-mod-php7.2 # Enable PHP-Apache sudo a2dismod php<old_version> && sudo a2enmod php7.2 && sudo service apache2 restart sudo ln -sfn /usr/bin/php7.2 /etc/alternatives/php |
Follow the following steps according Magento official docs :
Put your site on maintenance mode:
1 |
php <your Magento install dir>/bin/magento maintenance:enable |
Set up the new magento version on your composer:
1 2 |
composer require magento/product-community-edition 2.0.13 --no-update composer update |
Manually clear var
subdirectories:
1 2 3 |
rm -rf <Magento install dir>/var/cache/* rm -rf <Magento install dir>/var/page_cache/* rm -rf <Magento install dir>/var/generation/* |
Update the database schema and data:
1 |
php bin/magento setup:upgrade |
Put your storefront online (that is, cancel maintenance mode):
1 |
php bin/magento maintenance:disable |
Common Issues:
- On “composer update”
Problem 1 – Installation request for magento/product-community-edition 2.3.0 -> satisfiable by magento/product-community-edition[2.3.0]. – magento/product-community-edition 2.3.0 requires magento/framework 102.0.0 -> satisfiable by magento/framework[102.0.0]. – Conclusion: don’t install symfony/console v2.8.38 – Conclusion: don’t install symfony/console v4.1.0-BETA2|install symfony/console v2.8.38 – Conclusion: don’t install symfony/console v4.1.0-BETA3|install symfony/console v2.8.38 – Conclusion: don’t install symfony/console v4.1.0|install symfony/console v2.8.38 – Conclusion: don’t install symfony/console v4.1.1|install symfony/console v2.8.38 – Conclusion: don’t install symfony/console v4.1.2|install symfony/console v2.8.38 – Conclusion: don’t install symfony/console v4.1.3|install symfony/console v2.8.38 – Conclusion: don’t install symfony/console v4.1.4|install symfony/console v2.8.38 – Conclusion: don’t install symfony/console v4.1.5|install symfony/console v2.8.38 – Conclusion: don’t install symfony/console v4.1.6|install symfony/console v2.8.38 – Conclusion: don’t install symfony/console v4.1.7|install symfony/console v2.8.38
Solution:
Make sure you are specifying additional packages required :
1 |
composer require --dev phpunit/phpunit:~6.2.0 friendsofphp/php-cs-fixer:~2.10.1 lusitanian/oauth:~0.8.10 pdepend/pdepend:2.5.2 sebastian/phpcpd:~3.0.0 squizlabs/php_codesniffer:3.2.2 --no-update |
and remove unused packages :
1 |
composer remove --dev sjparkinson/static-review fabpot/php-cs-fixer --no-update |
- On “setup-upgrade”
After 2.3.0-alpha upgrade ‘Zend\Mvc\Controller\LazyControllerAbstractFactory’ not found
Solution:
The issue can be fixed by manually editing composer.json autoload section to
1 2 3 4 5 6 7 |
"autoload": { "psr-4": { "Magento\\Framework\\": "lib/internal/Magento/Framework/", "Magento\\Setup\\": "setup/src/Magento/Setup/", "Magento\\": "app/code/Magento/", "Zend\\Mvc\\Controller\\": "setup/src/Zend/Mvc/Controller/" }, |
and then run:
1 |
composer dumpautoload |