{"id":413598,"date":"2024-06-29T23:13:33","date_gmt":"2024-06-29T23:13:33","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=413598"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=413598","title":{"rendered":"<span>Magento 2: \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0438\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u044f \u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u2014 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u041f\u0440\u0438\u0432\u0435\u0442. \u042f \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c back-end \/ full-stack \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u043d\u0430 Magento 2 \u0443\u0436\u0435 3.5 \u0433\u043e\u0434\u0430. \u0412\u0441\u0435 \u044d\u0442\u0438 \u0433\u043e\u0434\u044b \u0443 \u043c\u0435\u043d\u044f \u043d\u0438\u043a\u0430\u043a \u043d\u0435 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u0441\u0438\u043b \u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043f\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u044c \u043e\u0434\u0438\u043d \u0441\u0432\u043e\u0439 \u0441\u0442\u0430\u0440\u044b\u0439 (\u043d\u043e \u0432\u0441\u0451 \u0435\u0449\u0435 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0439) \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 \u0443\u0431\u043e\u0433\u043e\u0433\u043e Web-CMS uWeb \u043d\u0430 \u0447\u0442\u043e-\u0442\u043e \u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u0442\u043e\u043b\u043a\u043e\u0432\u043e\u0435, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u043e\u0435 \u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u0435\u043c\u043e\u0435. \u0418\u0434\u0435\u0439 \u0431\u044b\u043b\u043e \u043c\u043d\u043e\u0433\u043e &#8212; \u043f\u0438\u0441\u0430\u0442\u044c \u0441 \u043d\u0443\u043b\u044f \u043d\u0430 Symfony, \u0438\u0437\u0443\u0447\u0430\u0442\u044c Drupal \u0438 \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0430 \u043d\u0435\u043c, \u043f\u0440\u0438\u0432\u043b\u0435\u043a\u0430\u0442\u044c React JS&#8230; \u041d\u043e \u0432\u0441\u0451 \u044d\u0442\u043e \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u0442\u0440\u0430\u0442 \u0438 \u043e\u0442 \u044d\u0442\u0438\u0445 \u0438\u0434\u0435\u0439 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u043b\u043e\u0441\u044c \u043e\u0442\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c\u0441\u044f.<\/p>\n<p>\u0418 \u0432\u043e\u0442 \u043d\u0435\u0434\u0430\u0432\u043d\u043e \u043c\u043d\u0435 \u0432 \u0433\u043e\u043b\u043e\u0432\u0443 \u043f\u0440\u0438\u0448\u043b\u0430 \u0434\u0440\u0443\u0433\u0430\u044f (\u0441\u043e\u0432\u0441\u0435\u043c \u0443\u0436 \u0431\u0435\u0437\u0443\u043c\u043d\u0430\u044f?) \u0438\u0434\u0435\u044f: \u0430 \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Magento 2 \u043a\u0430\u043a \u043a\u0430\u0440\u043a\u0430\u0441 \u0434\u043b\u044f \u043c\u043e\u0435\u0433\u043e \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u043f\u0443\u0441\u0442\u044c \u043e\u043d \u0434\u0430\u0436\u0435 \u0438 \u043d\u0435 E-commerce? \u0422\u0443\u0442 \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u043d\u0430 \u0443\u043c \u043f\u0440\u0438\u0445\u043e\u0434\u044f\u0442 \u0432\u043f\u043e\u043b\u043d\u0435 \u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0435 \u0432\u043e\u0437\u0440\u0430\u0436\u0435\u043d\u0438\u044f &#8212; \u0432\u0440\u043e\u0434\u0435 \u0441\u043e\u043c\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 E-commerce CMS \u0434\u043b\u044f \u043d\u0435-\u043c\u0430\u0433\u0430\u0437\u0438\u043d\u043e\u0432, \u0441\u0442\u0440\u0435\u043b\u044c\u0431\u044b \u0438\u0437 \u043f\u0443\u0448\u043a\u0438 \u043f\u043e \u0432\u043e\u0440\u043e\u0431\u044c\u044f\u043c (\u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0435 \u043e\u0441\u043e\u0431\u043e \u0431\u043e\u043b\u044c\u0448\u043e\u0439), \u043d\u0438\u0437\u043a\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438\/\u0432\u044b\u0441\u043e\u043a\u0438\u0445 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0439 \u043a \u0436\u0435\u043b\u0435\u0437\u0443 \u0438 \u0442. \u0434. \u041d\u043e \u0438 \u0442\u0435\u043e\u0440\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043b\u044e\u0441\u044b \u044f \u0434\u043b\u044f \u0441\u0435\u0431\u044f \u0432 \u0442\u0430\u043a\u043e\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0432\u0438\u0436\u0443:<\/p>\n<ul>\n<li>\n<p>\u043d\u0435 \u043d\u0430\u0434\u043e \u0442\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f \u043d\u0430 \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u0441\u0442\u0435\u043a\u0430 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439 \u0438\u043b\u0438 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430;<\/p>\n<\/li>\n<li>\n<p>\u043c\u043e\u0434\u0443\u043b\u044c\u043d\u043e\u0441\u0442\u044c, \u0433\u0440\u0430\u043c\u043e\u0442\u043d\u043e \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u0430\u044f \u044d\u043a\u043e-\u0441\u0438\u0441\u0442\u0435\u043c\u0430, \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0445 best practices;<\/p>\n<\/li>\n<li>\n<p>\u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043c\u043c\u044c\u044e\u043d\u0438\u0442\u0438 \u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u043e\u0442\u0432\u0435\u0442\u043e\u0432 \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043b\u044e\u0431\u044b\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435.<\/p>\n<\/li>\n<\/ul>\n<p>\u041d\u0443 \u0438 \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043c\u043d\u0435 \u0432 \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u0441\u0442\u0435\u043f\u0435\u043d\u0438 \u0434\u0430\u0436\u0435 \u0441\u0442\u0430\u043b\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e, \u043d\u0430 \u0447\u0442\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u0430 Magento, \u0438 \u043c\u043e\u0436\u043d\u043e \u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0435\u0451 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0435\u0451 \u0431\u043e\u043b\u044c\u0448\u0435 \u043a\u0430\u043a \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a, \u0430 \u043d\u0435 \u043a\u0430\u043a CMS (\u043d\u043e \u0438 \u0432 \u044d\u0442\u043e\u043c \u043f\u043b\u0430\u043d\u0435 \u0442\u043e\u0436\u0435 &#8212; \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u043e\u0434\u0443\u043b\u044c \u0430\u0434\u043c\u0438\u043d\u043a\u0438).<\/p>\n<p>\u041f\u043e\u043c\u043d\u044e, \u043d\u0430 \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0439 \u043f\u043e Magento \u0431\u044b\u043b \u0434\u043e\u043a\u043b\u0430\u0434, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u043b \u043e \u0441\u0432\u043e\u0451\u043c \u043e\u043f\u044b\u0442\u0435 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043e\u0431\u043b\u0435\u0433\u0447\u0435\u043d\u0438\u044f Magento 2 \u043f\u0443\u0442\u0435\u043c \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0433\u043e, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c. \u042f \u0436\u0435 \u043f\u043e\u0448\u0435\u043b \u0434\u0440\u0443\u0433\u0438\u043c \u043f\u0443\u0442\u0451\u043c: \u043c\u043e\u044f \u0438\u0434\u0435\u044f &#8212; \u043f\u043e\u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u0442\u043e, \u0432 \u0447\u0435\u043c \u043d\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u0430\u0439\u0442\u0430. \u041a\u0440\u0438\u0442\u0435\u0440\u0438\u0435\u043c \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u044f \u0432\u0437\u044f\u043b \u0443\u0441\u043f\u0435\u0448\u043d\u0443\u044e \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 frontend \u0438 backend \u043e\u0431\u043b\u0430\u0441\u0442\u0435\u0439 \u0441\u0430\u0439\u0442\u0430. <\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043e \u0441\u0432\u043e\u0451\u043c \u043e\u043f\u044b\u0442\u0435 \u0440\u0443\u0447\u043d\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 Magento 2 \u0438 \u043f\u043e\u043f\u044b\u0442\u043a\u0430\u0445 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438.<\/p>\n<h2>\u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435<\/h2>\n<p>\u0418\u043c\u0435\u0435\u043c Ubuntu 20.04, nginx 1.18.0, PHP-FPM 7.4.22, MariaDB 10.3.30, Composer 2.1.5<\/p>\n<p>\u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0435 \u0443 \u043c\u0435\u043d\u044f \u0431\u044b\u043b\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f Magento CE 2.4.2-p1, \u0447\u0442\u043e\u0431\u044b \u0432\u0438\u0434\u0435\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0432 composer.json. \u0420\u0430\u0437\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u043d\u0430 \u043e\u0447\u0435\u043d\u044c \u043b\u0435\u0433\u043a\u043e:<\/p>\n<pre><code class=\"bash\">composer create-project --repository-url=https:\/\/repo.magento.com\/ magento\/project-community-edition &lt;install-directory-name> <\/code><\/pre>\n<p>\u0414\u0430\u043b\u0435\u0435, \u0447\u0442\u043e\u0431 \u0431\u044b\u043b\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0435\u0435, \u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u043b \u0432\u0441\u0435 \u043b\u0438\u0448\u043d\u0438\u0435 \u043c\u043e\u0434\u0443\u043b\u0438 PHP, \u043e\u0441\u0442\u0430\u0432\u0438\u0432 \u0442\u043e\u043b\u044c\u043a\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0432 <a href=\"https:\/\/devdocs.magento.com\/guides\/v2.4\/install-gde\/system-requirements.html\" rel=\"noopener noreferrer nofollow\">System Requirements<\/a> :<\/p>\n<ul>\n<li>\n<p>ext-bcmath<\/p>\n<\/li>\n<li>\n<p>ext-ctype<\/p>\n<\/li>\n<li>\n<p>ext-curl<\/p>\n<\/li>\n<li>\n<p>ext-dom<\/p>\n<\/li>\n<li>\n<p>ext-gd<\/p>\n<\/li>\n<li>\n<p>ext-hash<\/p>\n<\/li>\n<li>\n<p>ext-iconv<\/p>\n<\/li>\n<li>\n<p>ext-intl<\/p>\n<\/li>\n<li>\n<p>ext-mbstring<\/p>\n<\/li>\n<li>\n<p>ext-openssl<\/p>\n<\/li>\n<li>\n<p>ext-pdo_mysql<\/p>\n<\/li>\n<li>\n<p>ext-simplexml<\/p>\n<\/li>\n<li>\n<p>ext-soap<\/p>\n<\/li>\n<li>\n<p>ext-xsl<\/p>\n<\/li>\n<li>\n<p>ext-zip<\/p>\n<\/li>\n<li>\n<p>ext-sockets<\/p>\n<\/li>\n<\/ul>\n<p>\u041c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0430\u0441\u0430\u0442\u044c\u0441\u044f \u043f\u043e\u043f\u043a\u043e\u0440\u043d\u043e\u043c&#8230;<\/p>\n<h2>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432<\/h2>\n<p>\u0418\u0442\u0430\u043a, \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u043f\u0440\u043e\u0435\u043a\u0442 \/var\/www\/magento-framework-check, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0432\u043d\u0443\u0442\u0440\u0438 <code>composer init<\/code> \u0438, \u0432\u043f\u043e\u043b\u043d\u0435 \u043b\u043e\u0433\u0438\u0447\u043d\u043e, \u043f\u043e\u043b\u0443\u0447\u0430\u044e \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c &#8212; phar, \u0430 \u0442\u0430\u043a\u0436\u0435, \u043f\u043e\u0445\u043e\u0436\u0435, \u043e\u0448\u0438\u0431\u043a\u0443 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u0443\u044e \u0441 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435\u043c \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f dom:<\/p>\n<p><code>PHP Warning:  PHP Startup: Unable to load dynamic library 'xsl.so' (tried: \/usr\/lib\/php\/20190902\/xsl.so (\/usr\/lib\/php\/20190902\/xsl.so: undefined symbol: dom_node_class_entry), \/usr\/lib\/php\/20190902\/xsl.so.so (\/usr\/lib\/php\/20190902\/xsl.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 PHP Fatal error:  Uncaught Error: Class 'Phar' not found in \/usr\/local\/bin\/composer:23 Stack trace: #0 {main}   thrown in \/usr\/local\/bin\/composer on line 23<\/code><\/p>\n<p>\u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c <code>sudo phpenmod phar dom<\/code>, \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0441\u0435\u0440\u0432\u0438\u0441 PHP-FPM \u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0435\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u0443. \u0422\u0435\u043f\u0435\u0440\u044c \u043d\u0435 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u043c\u043e\u0434\u0443\u043b\u044f JSON:<\/p>\n<details class=\"spoiler\">\n<summary>exception<\/summary>\n<div class=\"spoiler__content\">\n<p><code>PHP Fatal error:  Uncaught Error: Call to undefined function Composer\\Json\\json_decode() in phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Json\/JsonFile.php:182 Stack trace: #0 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Factory.php(313): Composer\\Json\\JsonFile->validateSchema() #1 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Factory.php(616): Composer\\Factory->createComposer() #2 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(418): Composer\\Factory::create() #3 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(540): Composer\\Console\\Application->getComposer() #4 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(191): Composer\\Console\\Application->getPluginCommands() #5 phar:\/\/\/usr\/local\/bin\/composer\/vendor\/symfony\/console\/Application.php(117): Composer\\Console\\Application->doRun() #6 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(125): Symfony\\Component\\Console\\Application->run() #7 phar:\/\/\/usr\/local\/bin\/composer\/bin\/composer(67): Composer\\Console\\Appli in phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Json\/JsonFile.php on line 182<\/code><\/p>\n<p><code>Fatal error: Uncaught Error: Call to undefined function Composer\\Json\\json_decode() in phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Json\/JsonFile.php:182 Stack trace: #0 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Factory.php(313): Composer\\Json\\JsonFile->validateSchema() #1 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Factory.php(616): Composer\\Factory->createComposer() #2 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(418): Composer\\Factory::create() #3 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(540): Composer\\Console\\Application->getComposer() #4 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(191): Composer\\Console\\Application->getPluginCommands() #5 phar:\/\/\/usr\/local\/bin\/composer\/vendor\/symfony\/console\/Application.php(117): Composer\\Console\\Application->doRun() #6 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(125): Symfony\\Component\\Console\\Application->run() #7 phar:\/\/\/usr\/local\/bin\/composer\/bin\/composer(67): Composer\\Console\\Appli in phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Json\/JsonFile.php on line 182<\/code><\/p>\n<\/div>\n<\/details>\n<p>\u041d\u0435 \u0437\u0440\u044f \u0432 8-\u0439 \u0432\u0432\u0435\u0440\u0441\u0438 \u0435\u0433\u043e \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0438\u0437 \u043a\u043e\u0440\u043e\u0431\u043a\u0438. \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c  \u0438 \u043d\u0430\u043a\u043e\u043d\u0435\u0446 \u0433\u0435\u043d\u0435\u0440\u0438\u043c JSON:<\/p>\n<pre><code class=\"json\">{     \"name\": \"taras\/magento-framework-check\",     \"type\": \"project\",     \"minimum-stability\": \"stable\",     \"require\": {} } <\/code><\/pre>\n<p>\u0427\u0442\u043e\u0431\u044b \u043d\u0435 \u0437\u0430\u043f\u0430\u0440\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0441 \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430\u043c\u0438, \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439 \u0430\u0432\u0442\u043e\u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430 \u0438 \u0442. \u0434., \u043f\u0440\u043e\u0441\u0442\u043e \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u043c \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u043e\u043b\u044f \u0438\u0437 JSON&#8217;\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0439 Magento 2.4.2. \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c:<\/p>\n<pre><code class=\"json\">{     \"name\": \"taras\/magento-framework-check\",     \"type\": \"project\",     \"minimum-stability\": \"stable\",     \"require\": {},     \"config\": {         \"preferred-install\": \"dist\",         \"sort-packages\": true     },     \"version\": \"2.4.2-p1\",     \"autoload\": {         \"exclude-from-classmap\": [             \"**\/dev\/**\",             \"**\/update\/**\",             \"**\/Test\/**\"         ],         \"files\": [             \"app\/etc\/NonComposerComponentRegistration.php\"         ],         \"psr-0\": {             \"\": [                 \"app\/code\/\",                 \"generated\/code\/\"             ]         },         \"psr-4\": {             \"Magento\\\\\": \"app\/code\/Magento\/\",             \"Magento\\\\Framework\\\\\": \"lib\/internal\/Magento\/Framework\/\",             \"Magento\\\\Setup\\\\\": \"setup\/src\/Magento\/Setup\/\",             \"Zend\\\\Mvc\\\\Controller\\\\\": \"setup\/src\/Zend\/Mvc\/Controller\/\"         }     },     \"conflict\": {         \"gene\/bluefoot\": \"*\"     },     \"prefer-stable\": true,     \"repositories\": [         {             \"type\": \"composer\",             \"url\": \"https:\/\/repo.magento.com\/\"         }     ],     \"extra\": {         \"magento-force\": \"override\"     } } <\/code><\/pre>\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435: \u044f \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u043b \u0440\u0430\u0437\u0434\u0435\u043b\u044b require-dev \u0438 autoload-dev.<\/p>\n<p>\u0422\u0430\u043a\u0436\u0435 \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0444\u0430\u0439\u043b\u0430 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 c \u043a\u0440\u0435\u0434\u0430\u043c\u0438 \u0434\u043b\u044f \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f Magento &#8212; auth.json:<\/p>\n<pre><code class=\"json\">{     \"http-basic\": {         \"repo.magento.com\": {             \"username\": \"&lt;public>\",             \"password\": \"&lt;private>\"         }     } }<\/code><\/pre>\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u0447\u0442\u043e \u0432\u0441\u0451 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043c <code>composer install<\/code>. \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0444\u0430\u0439\u043b\u043e\u0432:<\/p>\n<figure class=\"bordered full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/f2a\/e6d\/250\/f2ae6d2506281f210ec6434d05487c31.png\" width=\"1086\" height=\"828\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f2a\/e6d\/250\/f2ae6d2506281f210ec6434d05487c31.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u043f\u0435\u0440\u0432\u044b\u0439 \u043f\u0430\u043a\u0435\u0442. \u041a\u0430\u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Magento 2 \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u043f\u0430\u043a\u0435\u0442\u043e\u043c magento\/magento2-base. \u0421 \u043d\u0435\u0433\u043e \u0438 \u043d\u0430\u0447\u043d\u0435\u043c:<\/p>\n<details class=\"spoiler\">\n<summary> composer require magento\/magento2-base<\/summary>\n<div class=\"spoiler__content\">\n<p>$ composer require magento\/magento2-base<\/p>\n<p> Using version ^2.4 for magento\/magento2-base .\/composer.json has been updated Running composer update magento\/magento2-base Loading composer repositories with package information Updating dependencies Lock file operations: 65 installs, 0 updates, 0 removals<\/p>\n<ul>\n<li>\n<p>Locking composer\/ca-bundle (1.2.10)<\/p>\n<\/li>\n<li>\n<p>Locking composer\/composer (1.10.22)<\/p>\n<\/li>\n<li>\n<p>Locking composer\/semver (1.7.2)<\/p>\n<\/li>\n<li>\n<p>Locking composer\/spdx-licenses (1.5.5)<\/p>\n<\/li>\n<li>\n<p>Locking composer\/xdebug-handler (1.4.6)<\/p>\n<\/li>\n<li>\n<p>Locking container-interop\/container-interop (1.2.0)<\/p>\n<\/li>\n<li>\n<p>Locking justinrainbow\/json-schema (5.2.11)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-code (3.4.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-config (2.6.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-console (2.8.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-crypt (2.6.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-di (2.6.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-diactoros (1.8.7p2)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-escaper (2.8.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-eventmanager (3.3.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-filter (2.11.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-form (2.15.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-http (2.14.3)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-hydrator (2.4.2)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-i18n (2.11.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-inputfilter (2.10.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-json (2.6.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-loader (2.7.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-log (2.12.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-math (2.7.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-modulemanager (2.9.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-mvc (2.7.15)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-psr7bridge (0.2.2)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-serializer (2.10.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-server (2.9.2)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-servicemanager (2.7.11)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-soap (2.9.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-stdlib (3.5.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-text (2.7.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-uri (2.8.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-validator (2.14.5)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-view (2.11.5)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-zendframework-bridge (1.3.0)<\/p>\n<\/li>\n<li>\n<p>Locking magento\/composer (1.6.0)<\/p>\n<\/li>\n<li>\n<p>Locking magento\/magento-composer-installer (0.2.1)<\/p>\n<\/li>\n<li>\n<p>Locking magento\/magento2-base (2.4.2-p1)<\/p>\n<\/li>\n<li>\n<p>Locking magento\/zendframework1 (1.14.5)<\/p>\n<\/li>\n<li>\n<p>Locking monolog\/monolog (1.26.1)<\/p>\n<\/li>\n<li>\n<p>Locking pelago\/emogrifier (v3.1.0)<\/p>\n<\/li>\n<li>\n<p>Locking phpseclib\/phpseclib (2.0.32)<\/p>\n<\/li>\n<li>\n<p>Locking psr\/container (1.1.1)<\/p>\n<\/li>\n<li>\n<p>Locking psr\/http-message (1.0.1)<\/p>\n<\/li>\n<li>\n<p>Locking psr\/log (1.1.4)<\/p>\n<\/li>\n<li>\n<p>Locking seld\/jsonlint (1.8.3)<\/p>\n<\/li>\n<li>\n<p>Locking seld\/phar-utils (1.1.1)<\/p>\n<\/li>\n<li>\n<p>Locking symfony\/console (v4.4.29)<\/p>\n<\/li>\n<li>\n<p>Locking symfony\/css-selector (v5.3.4)<\/p>\n<\/li>\n<li>\n<p>Locking symfony\/event-dispatcher (v4.4.27)<\/p>\n<\/li>\n<li>\n<p>Locking symfony\/event-dispatcher-contracts (v1.1.9)<\/p>\n<\/li>\n<li>\n<p>Locking symfony\/filesystem (v5.3.4)<\/p>\n<\/li>\n<li>\n<p>Locking symfony\/finder (v5.3.4)<\/p>\n<\/li>\n<li>\n<p>Locking symfony\/polyfill-ctype (v1.23.0)<\/p>\n<\/li>\n<li>\n<p>Locking symfony\/polyfill-mbstring (v1.23.1)<\/p>\n<\/li>\n<li>\n<p>Locking symfony\/polyfill-php73 (v1.23.0)<\/p>\n<\/li>\n<li>\n<p>Locking symfony\/polyfill-php80 (v1.23.1)<\/p>\n<\/li>\n<li>\n<p>Locking symfony\/process (v5.3.4)<\/p>\n<\/li>\n<li>\n<p>Locking symfony\/service-contracts (v2.4.0)<\/p>\n<\/li>\n<li>\n<p>Locking tedivm\/jshrink (v1.3.3)<\/p>\n<\/li>\n<li>\n<p>Locking tubalmartin\/cssmin (v4.1.1)<\/p>\n<\/li>\n<li>\n<p>Locking webimpress\/safe-writer (2.2.0) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 65 installs, 0 updates, 0 removals<\/p>\n<\/li>\n<li>\n<p>Installing composer\/ca-bundle (1.2.10): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing composer\/semver (1.7.2): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing composer\/spdx-licenses (1.5.5): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing psr\/log (1.1.4): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing composer\/xdebug-handler (1.4.6): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing psr\/container (1.1.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing justinrainbow\/json-schema (5.2.11): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing symfony\/polyfill-php80 (v1.23.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing symfony\/service-contracts (v2.4.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing symfony\/polyfill-php73 (v1.23.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing symfony\/polyfill-mbstring (v1.23.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing symfony\/console (v4.4.29): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing symfony\/process (v5.3.4): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing symfony\/finder (v5.3.4): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing symfony\/polyfill-ctype (v1.23.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing symfony\/filesystem (v5.3.4): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing seld\/phar-utils (1.1.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing seld\/jsonlint (1.8.3): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing composer\/composer (1.10.22): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing magento\/magento-composer-installer (0.2.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing container-interop\/container-interop (1.2.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-zendframework-bridge (1.3.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-escaper (2.8.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-stdlib (3.5.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-hydrator (2.4.2): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-validator (2.14.5): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-servicemanager (2.7.11): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-filter (2.11.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-inputfilter (2.10.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-loader (2.7.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-math (2.7.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing psr\/http-message (1.0.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-uri (2.8.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-http (2.14.3): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-diactoros (1.8.7p2): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-psr7bridge (0.2.2): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing tubalmartin\/cssmin (v4.1.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing tedivm\/jshrink (v1.3.3): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing symfony\/event-dispatcher-contracts (v1.1.9): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing symfony\/event-dispatcher (v4.4.27): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing phpseclib\/phpseclib (2.0.32): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing symfony\/css-selector (v5.3.4): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing pelago\/emogrifier (v3.1.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing monolog\/monolog (1.26.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing magento\/zendframework1 (1.14.5): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing magento\/composer (1.6.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-json (2.6.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-eventmanager (3.3.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-view (2.11.5): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-text (2.7.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-code (3.4.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-server (2.9.2): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-soap (2.9.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-serializer (2.10.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-form (2.15.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-console (2.8.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-mvc (2.7.15): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing webimpress\/safe-writer (2.2.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-config (2.6.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-modulemanager (2.9.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-log (2.12.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-i18n (2.11.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-di (2.6.1): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing laminas\/laminas-crypt (2.6.0): Extracting archive<\/p>\n<\/li>\n<li>\n<p>Installing magento\/magento2-base (2.4.2-p1): Extracting archive 47 package suggestions were added by new dependencies, use <code>composer suggest<\/code> to see details. Package container-interop\/container-interop is abandoned, you should avoid using it. Use psr\/container instead. Package laminas\/laminas-console is abandoned, you should avoid using it. Use laminas\/laminas-cli instead. Generating autoload files 37 packages you are using are looking for funding. Use the <code>composer fund<\/code> command to find out more!<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<\/details>\n<p>\u041f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e, \u043f\u043e\u0445\u043e\u0436\u0435, \u0432\u0441\u0451 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u043e\u0441\u044c, \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0444\u0430\u0439\u043b\u043e\u0432 \u0441\u043e\u0437\u0434\u0430\u043b\u0430\u0441\u044c:<\/p>\n<figure class=\"bordered full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/601\/5af\/4eb\/6015af4eb10afb8a69cf7390737f93ab.png\" width=\"1082\" height=\"1388\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/601\/5af\/4eb\/6015af4eb10afb8a69cf7390737f93ab.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u041f\u0440\u043e\u0431\u0443\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c bin\/magento:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento  PHP Fatal error:  Uncaught Error: Class 'Magento\\Framework\\Component\\ComponentRegistrar' not found in \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/registration.php:9 Stack trace: #0 \/var\/www\/magento-framework-check\/app\/etc\/NonComposerComponentRegistration.php(29): require_once() #1 [internal function]: Magento\\NonComposerComponentRegistration\\{closure}() #2 \/var\/www\/magento-framework-check\/app\/etc\/NonComposerComponentRegistration.php(31): array_map() #3 \/var\/www\/magento-framework-check\/app\/etc\/NonComposerComponentRegistration.php(34): Magento\\NonComposerComponentRegistration\\{closure}() #4 \/var\/www\/magento-framework-check\/vendor\/composer\/autoload_real.php(75): require('\/var\/www\/magent...') #5 \/var\/www\/magento-framework-check\/vendor\/composer\/autoload_real.php(65): composerRequiref27b5d24f83d64c29deb274744cf45e2() #6 \/var\/www\/magento-framework-check\/vendor\/autoload.php(7): ComposerAutoloaderInitf27b5d24f83d64c29deb274744cf45e2::getLoader() #7 \/var\/www\/magento-framework-check\/app\/autoload.php(51): include('\/var\/www\/ma in \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/registration.php on line 9 <\/code><\/pre>\n<p>\u0425\u043c\u043c. \u041e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f, \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 magento2-base \u043d\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b magento-framework, \u043d\u043e \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u044f\u0432\u043d\u043e \u043e\u0442 \u043d\u0435\u0433\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u0442. \u0414\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0441\u0442\u0440\u0430\u043d\u043d\u043e. \u0427\u0442\u043e\u0436, \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0435\u0433\u043e \u0432\u0440\u0443\u0447\u043d\u0443\u044e:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ composer require magento\/framework Using version ^103.0 for magento\/framework .\/composer.json has been updated Running composer update magento\/framework Loading composer repositories with package information Updating dependencies Your requirements could not be resolved to an installable set of packages.    Problem 1     - magento\/framework[103.0.0, ..., 103.0.2-p1] require symfony\/process ~4.4.0 -> found symfony\/process[v4.4.0, ..., v4.4.27] but the package is fixed to v5.3.4 (lock file version) by a partial update and that version does not match. Make sure you list it as an argument for the update command.     - Root composer.json requires magento\/framework ^103.0 -> satisfiable by magento\/framework[103.0.0, ..., 103.0.2-p1].  Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently locked to specific versions.  Installation failed, reverting .\/composer.json and .\/composer.lock to their original content. <\/code><\/pre>\n<p>\u041f\u043e\u0445\u043e\u0436\u0435, \u0443 \u043d\u0430\u0441 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b &#8212; \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u0430\u044f \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u044f symfony\/process \u043d\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0443. \u041b\u0430\u0434\u043d\u043e, \u0444\u043e\u0440\u0441\u0438\u0440\u0443\u0435\u043c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ composer require magento\/framework --with-all-dependencies Using version ^103.0 for magento\/framework .\/composer.json has been updated Running composer update magento\/framework --with-all-dependencies Loading composer repositories with package information Updating dependencies Lock file operations: 16 installs, 1 update, 0 removals   - Locking colinmollenhour\/credis (v1.12.1)   - Locking colinmollenhour\/php-redis-session-abstract (v1.4.4)   - Locking guzzlehttp\/guzzle (6.5.5)   - Locking guzzlehttp\/promises (1.4.1)   - Locking guzzlehttp\/psr7 (1.8.2)   - Locking laminas\/laminas-mail (2.14.1)   - Locking laminas\/laminas-mime (2.8.0)   - Locking magento\/framework (103.0.2-p1)   - Locking paragonie\/random_compat (v9.99.99)   - Locking ralouphie\/getallheaders (3.0.3)   - Locking ramsey\/uuid (3.8.0)   - Locking symfony\/polyfill-intl-idn (v1.23.0)   - Locking symfony\/polyfill-intl-normalizer (v1.23.0)   - Locking symfony\/polyfill-php72 (v1.23.0)   - Downgrading symfony\/process (v5.3.4 => v4.4.27)   - Locking true\/punycode (v2.1.1)   - Locking wikimedia\/less.php (1.8.2) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 16 installs, 1 update, 0 removals   - Installing colinmollenhour\/credis (v1.12.1): Extracting archive   - Installing guzzlehttp\/promises (1.4.1): Extracting archive   - Installing ralouphie\/getallheaders (3.0.3): Extracting archive   - Installing guzzlehttp\/psr7 (1.8.2): Extracting archive   - Installing wikimedia\/less.php (1.8.2): Extracting archive   - Downgrading symfony\/process (v5.3.4 => v4.4.27): Extracting archive   - Installing paragonie\/random_compat (v9.99.99): Extracting archive   - Installing ramsey\/uuid (3.8.0): Extracting archive   - Installing laminas\/laminas-mime (2.8.0): Extracting archive   - Installing true\/punycode (v2.1.1): Extracting archive   - Installing laminas\/laminas-mail (2.14.1): Extracting archive   - Installing symfony\/polyfill-php72 (v1.23.0): Extracting archive   - Installing symfony\/polyfill-intl-normalizer (v1.23.0): Extracting archive   - Installing symfony\/polyfill-intl-idn (v1.23.0): Extracting archive   - Installing guzzlehttp\/guzzle (6.5.5): Extracting archive   - Installing colinmollenhour\/php-redis-session-abstract (v1.4.4): Extracting archive   - Installing magento\/framework (103.0.2-p1): Extracting archive 9 package suggestions were added by new dependencies, use `composer suggest` to see details. Package container-interop\/container-interop is abandoned, you should avoid using it. Use psr\/container instead. Package laminas\/laminas-console is abandoned, you should avoid using it. Use laminas\/laminas-cli instead. Generating autoload files 42 packages you are using are looking for funding. Use the `composer fund` command to find out more! <\/code><\/pre>\n<p>\u0412\u0441\u0451 \u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0435, \u0432\u0435\u0440\u0441\u0438\u044f \u043e\u0431\u043d\u043e\u0432\u0438\u043b\u0430\u0441\u044c, \u0432\u0441\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u044b. \u041f\u0440\u043e\u0431\u0443\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u043a:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento Constant name is expected.<\/code><\/pre>\n<p>\u0410 \u0432\u043e\u0442 \u044d\u0442\u043e \u0443\u0436\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e. \u0412 \u043b\u043e\u0433\u0430\u0445 \u043d\u0438\u0447\u0435\u0433\u043e. \u041d\u0430\u0447\u0438\u043d\u0430\u0435\u043c \u0434\u0435\u0431\u0430\u0436\u0438\u0442\u044c &#8212; \u0432\u044b\u044f\u0441\u043d\u044f\u0435\u043c, \u0447\u0442\u043e \u0443 \u043d\u0430\u0441 \u0438\u043c\u0435\u044e\u0442\u0441\u044f \u043d\u0435\u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 Mageno_Store \u0432 app\/etc\/di.xml. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<pre><code class=\"xml\">&lt;type name=\"Magento\\Framework\\Url\">   &lt;arguments>     &lt;argument name=\"session\" xsi:type=\"object\">Magento\\Framework\\Session\\Generic\\Proxy&lt;\/argument>     &lt;argument name=\"scopeType\" xsi:type=\"const\">Magento\\Store\\Model\\ScopeInterface::SCOPE_STORE&lt;\/argument>   &lt;\/arguments> &lt;\/type><\/code><\/pre>\n<p>\u0427\u0442\u043e \u044d\u0442\u0438 \u0441\u0442\u0440\u043e\u043a\u0438 \u0442\u0430\u043c \u0434\u0435\u043b\u0430\u044e\u0442 \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u0442\u043e\u0433\u0434\u0430 \u043c\u043e\u0434\u0443\u043b\u044c \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d \u0432 composer.json &#8212; \u043d\u0435\u043f\u043e\u043d\u044f\u0442\u043d\u043e. \u0412\u043e\u0442 \u0432\u0430\u043c \u0438 \u043c\u043e\u0434\u0443\u043b\u044c\u043d\u043e\u0441\u0442\u044c.<\/p>\n<p>\u0427\u0442\u043e \u0436, \u0431\u0443\u0434\u0435\u043c \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u044c store \u0432\u0440\u0443\u0447\u043d\u0443\u044e. \u041d\u0435 \u0443\u0432\u0435\u0440\u0435\u043d, \u0447\u0442\u043e \u043e\u043d \u043c\u043d\u0435 \u043f\u0440\u0438\u0433\u043e\u0434\u0438\u043b\u0441\u044f \u0431\u044b, \u043d\u043e \u043d\u0430\u0434\u043e \u043f\u0440\u0438\u0437\u043d\u0430\u0442\u044c, \u0447\u0442\u043e \u0432 Magento \u043d\u0430 \u0441\u043a\u043e\u0443\u043f\u044b \u0437\u0430\u0432\u044f\u0437\u0430\u043d\u043e \u043e\u0447\u0435\u043d\u044c \u043c\u043d\u043e\u0433\u043e\u0435, \u0438 \u0431\u0435\u0437 \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u0435\u0451 \u0441\u043b\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c.<\/p>\n<details class=\"spoiler\">\n<summary>composer require magento\/module-store<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ composer require magento\/module-store Using version ^101.1 for magento\/module-store .\/composer.json has been updated Running composer update magento\/module-store Loading composer repositories with package information Updating dependencies Lock file operations: 60 installs, 0 updates, 0 removals   - Locking laminas\/laminas-captcha (2.10.0)   - Locking laminas\/laminas-db (2.12.0)   - Locking laminas\/laminas-session (2.11.0)   - Locking magento\/framework-bulk (101.0.0)   - Locking magento\/framework-message-queue (100.4.2)   - Locking magento\/module-asynchronous-operations (100.4.2)   - Locking magento\/module-authorization (100.4.2)   - Locking magento\/module-backend (102.0.2)   - Locking magento\/module-backup (100.4.2)   - Locking magento\/module-bundle (101.0.2)   - Locking magento\/module-captcha (100.4.2)   - Locking magento\/module-catalog (104.0.2-p1)   - Locking magento\/module-catalog-import-export (101.1.2)   - Locking magento\/module-catalog-inventory (100.4.2)   - Locking magento\/module-catalog-rule (101.2.2)   - Locking magento\/module-catalog-url-rewrite (100.4.2)   - Locking magento\/module-checkout (100.4.2)   - Locking magento\/module-cms (104.0.2)   - Locking magento\/module-cms-url-rewrite (100.4.1)   - Locking magento\/module-config (101.2.2)   - Locking magento\/module-contact (100.4.2)   - Locking magento\/module-cron (100.4.2)   - Locking magento\/module-customer (103.0.2-p1)   - Locking magento\/module-deploy (100.4.2)   - Locking magento\/module-developer (100.4.2)   - Locking magento\/module-directory (100.4.2)   - Locking magento\/module-downloadable (100.4.2)   - Locking magento\/module-eav (102.1.2)   - Locking magento\/module-email (101.1.2)   - Locking magento\/module-gift-message (100.4.1)   - Locking magento\/module-import-export (101.0.2)   - Locking magento\/module-indexer (100.4.2)   - Locking magento\/module-integration (100.4.2)   - Locking magento\/module-media-storage (100.4.1)   - Locking magento\/module-msrp (100.4.1)   - Locking magento\/module-newsletter (100.4.2)   - Locking magento\/module-page-cache (100.4.2)   - Locking magento\/module-payment (100.4.2-p1)   - Locking magento\/module-product-alert (100.4.1)   - Locking magento\/module-quote (101.2.2)   - Locking magento\/module-reports (100.4.2)   - Locking magento\/module-require-js (100.4.0)   - Locking magento\/module-review (100.4.2)   - Locking magento\/module-rss (100.4.1)   - Locking magento\/module-rule (100.4.1)   - Locking magento\/module-sales (103.0.2)   - Locking magento\/module-sales-rule (101.2.2)   - Locking magento\/module-sales-sequence (100.4.1)   - Locking magento\/module-security (100.4.2-p1)   - Locking magento\/module-shipping (100.4.2)   - Locking magento\/module-store (101.1.2)   - Locking magento\/module-tax (100.4.2)   - Locking magento\/module-theme (101.1.2)   - Locking magento\/module-translation (100.4.2)   - Locking magento\/module-ui (101.2.2)   - Locking magento\/module-url-rewrite (102.0.1)   - Locking magento\/module-user (101.2.2)   - Locking magento\/module-variable (100.4.0)   - Locking magento\/module-widget (101.2.2)   - Locking magento\/module-wishlist (101.2.2) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 60 installs, 0 updates, 0 removals   - Installing laminas\/laminas-captcha (2.10.0): Extracting archive   - Installing laminas\/laminas-db (2.12.0): Extracting archive   - Installing laminas\/laminas-session (2.11.0): Extracting archive   - Installing magento\/framework-message-queue (100.4.2): Extracting archive   - Installing magento\/module-ui (101.2.2): Extracting archive   - Installing magento\/module-store (101.1.2): Extracting archive   - Installing magento\/module-user (101.2.2): Extracting archive   - Installing magento\/module-theme (101.1.2): Extracting archive   - Installing magento\/module-config (101.2.2): Extracting archive   - Installing magento\/module-wishlist (101.2.2): Extracting archive   - Installing magento\/module-widget (101.2.2): Extracting archive   - Installing magento\/module-tax (100.4.2): Extracting archive   - Installing magento\/module-sales (103.0.2): Extracting archive   - Installing magento\/module-shipping (100.4.2): Extracting archive   - Installing magento\/module-sales-sequence (100.4.1): Extracting archive   - Installing magento\/module-quote (101.2.2): Extracting archive   - Installing magento\/module-backend (102.0.2): Extracting archive   - Installing magento\/module-directory (100.4.2): Extracting archive   - Installing magento\/module-security (100.4.2-p1): Extracting archive   - Installing magento\/module-media-storage (100.4.1): Extracting archive   - Installing magento\/module-catalog (104.0.2-p1): Extracting archive   - Installing magento\/module-eav (102.1.2): Extracting archive   - Installing magento\/module-rule (100.4.1): Extracting archive   - Installing magento\/module-sales-rule (101.2.2): Extracting archive   - Installing magento\/module-require-js (100.4.0): Extracting archive   - Installing magento\/module-variable (100.4.0): Extracting archive   - Installing magento\/module-email (101.1.2): Extracting archive   - Installing magento\/module-cms (104.0.2): Extracting archive   - Installing magento\/module-page-cache (100.4.2): Extracting archive   - Installing magento\/module-newsletter (100.4.2): Extracting archive   - Installing magento\/module-customer (103.0.2-p1): Extracting archive   - Installing magento\/module-authorization (100.4.2): Extracting archive   - Installing magento\/module-integration (100.4.2): Extracting archive   - Installing magento\/module-checkout (100.4.2): Extracting archive   - Installing magento\/module-review (100.4.2): Extracting archive   - Installing magento\/module-gift-message (100.4.1): Extracting archive   - Installing magento\/module-catalog-inventory (100.4.2): Extracting archive   - Installing magento\/module-downloadable (100.4.2): Extracting archive   - Installing magento\/module-reports (100.4.2): Extracting archive   - Installing magento\/module-payment (100.4.2-p1): Extracting archive   - Installing magento\/module-catalog-rule (101.2.2): Extracting archive   - Installing magento\/module-captcha (100.4.2): Extracting archive   - Installing magento\/module-msrp (100.4.1): Extracting archive   - Installing magento\/module-contact (100.4.2): Extracting archive   - Installing magento\/module-bundle (101.0.2): Extracting archive   - Installing magento\/module-rss (100.4.1): Extracting archive   - Installing magento\/module-url-rewrite (102.0.1): Extracting archive   - Installing magento\/module-cms-url-rewrite (100.4.1): Extracting archive   - Installing magento\/module-import-export (101.0.2): Extracting archive   - Installing magento\/module-catalog-url-rewrite (100.4.2): Extracting archive   - Installing magento\/module-catalog-import-export (101.1.2): Extracting archive   - Installing magento\/module-product-alert (100.4.1): Extracting archive   - Installing magento\/module-indexer (100.4.2): Extracting archive   - Installing magento\/framework-bulk (101.0.0): Extracting archive   - Installing magento\/module-asynchronous-operations (100.4.2): Extracting archive   - Installing magento\/module-deploy (100.4.2): Extracting archive   - Installing magento\/module-cron (100.4.2): Extracting archive   - Installing magento\/module-developer (100.4.2): Extracting archive   - Installing magento\/module-translation (100.4.2): Extracting archive   - Installing magento\/module-backup (100.4.2): Extracting archive 34 package suggestions were added by new dependencies, use `composer suggest` to see details. Package container-interop\/container-interop is abandoned, you should avoid using it. Use psr\/container instead. Package laminas\/laminas-console is abandoned, you should avoid using it. Use laminas\/laminas-cli instead. Generating autoload files 45 packages you are using are looking for funding. Use the `composer fund` command to find out more!<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u0418 \u0432\u043e\u0442 \u0437\u0434\u0435\u0441\u044c \u043c\u043e\u0438 \u0433\u043b\u0430\u0437\u0430 \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0442 \u043e\u043a\u0440\u0443\u0433\u043b\u044f\u0442\u044c\u0441\u044f. 60 \u043f\u0430\u043a\u0435\u0442\u043e\u0432! 60 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u043e\u0447\u0442\u0438 \u0432\u0441\u0435 &#8212; \u043c\u043e\u0434\u0443\u043b\u0438 \u043c\u0430\u0434\u0436\u0435\u043d\u0442\u044b, \u043d\u0430\u0434\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u044c \u043e\u0442\u0432\u0435\u0447\u0430\u044e\u0449\u0438\u0439 \u0437\u0430 \u0441\u043a\u043e\u0443\u043f\u0438\u043d\u0433 &#8212; \u0432\u0435\u0431\u0441\u0430\u0439\u0442\u044b \u0438 \u0441\u0442\u043e\u0440\u044b. \u0412\u043f\u0440\u043e\u0447\u0435\u043c, \u043a\u0442\u043e \u0441\u043a\u0430\u0437\u0430\u043b, \u0447\u0442\u043e \u043e\u043d \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0437\u0430 \u044d\u0442\u043e? \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c readme:<\/p>\n<blockquote>\n<p>The Store module provides one of the basic and major features of a content management system for e-commerce websites by creating and managing a store for the customers to conduct online-shopping. Stores can be combined in groups,and are linked to a specific website. All store related configurations (currency, locale, scope etc.), management andstorage maintenance are covered under this module.<\/p>\n<\/blockquote>\n<p>\u042d\u0442\u043e \u043c\u043d\u043e\u0433\u043e\u0435 \u043e\u0431\u044a\u044f\u0441\u043d\u044f\u0435\u0442. \u041f\u043e\u0445\u043e\u0436\u0435, \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u043a\u0430\u0442\u0430\u0441\u0442\u0440\u043e\u0444\u0438\u0447\u0435\u0441\u043a\u0438 \u0448\u0438\u0440\u043e\u043a\u0430\u044f. \u041d\u043e \u0432\u0441\u0451 \u0436\u0435 \u043d\u0435 \u044f\u0441\u043d\u043e, \u043f\u043e\u0447\u0435\u043c\u0443 \u043e\u043d \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u043d\u0438\u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0431\u0435\u0437 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 Wishlist. \u0412 \u043e\u0431\u0449\u0435\u043c, \u0434\u0435\u043b\u0430 \u043f\u043b\u043e\u0445\u0438 &#8212; \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043d\u0435 \u0432 \u0442\u043e\u043c \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438, \u0434\u044f\u0434\u044e\u0448\u043a\u0430 \u0411\u043e\u0431 \u043f\u043b\u0430\u0447\u0435\u0442 \u043a\u0440\u043e\u0432\u0430\u0432\u044b\u043c\u0438 \u0441\u043b\u0435\u0437\u0430\u043c\u0438&#8230; <br \/>\u041b\u0430\u0434\u043d\u043e, \u0441\u043f\u0438\u0448\u0435\u043c \u043d\u0430 legacy, \u0441\u0442\u0435\u0440\u043f\u0438\u043c \u0438 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u043c &#8212; \u0445\u043e\u0442\u044f \u0431\u044b \u0440\u0430\u0434\u0438 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0430.<\/p>\n<p>\u0418 \u0432 \u0442\u0440\u0435\u0442\u0438\u0439 \u0440\u0430\u0437 \u0437\u0430\u043a\u0438\u043d\u0443\u043b \u0441\u0442\u0430\u0440\u0438\u043a \u043d\u0435\u0432\u043e\u0434&#8230;<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento PHP Fatal error:  Uncaught Error: Class 'Cm_Cache_Backend_File' not found in \/var\/www\/magento-framework-check\/vendor\/magento\/zendframework1\/library\/Zend\/Cache.php:153 Stack trace: #0 \/var\/www\/magento-framework-check\/vendor\/magento\/zendframework1\/library\/Zend\/Cache.php(94): Zend_Cache::_makeBackend() #1 \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/App\/Cache\/Frontend\/Factory.php(156): Zend_Cache::factory() #2 \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/Cache\/Frontend\/Adapter\/Zend.php(38): Magento\\Framework\\App\\Cache\\Frontend\\Factory->Magento\\Framework\\App\\Cache\\Frontend\\{closure}() #3 \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/ObjectManager\/Factory\/AbstractFactory.php(121): Magento\\Framework\\Cache\\Frontend\\Adapter\\Zend->__construct() #4 \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/ObjectManager\/Factory\/Dynamic\/Developer.php(66): Magento\\Framework\\ObjectManager\\Factory\\AbstractFactory->createObject() #5 \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/ObjectManager\/O in \/var\/www\/magento-framework-check\/vendor\/magento\/zendframework1\/library\/Zend\/Cache.php on line 153<\/code><\/pre>\n<p>\u0423\u0432\u044b, \u043d\u0435 \u0444\u0430\u0440\u0442\u0430\u043d\u0443\u043b\u043e &#8212; \u043c\u044b \u044f\u0432\u043d\u043e \u043d\u0435 \u0432 \u0441\u043a\u0430\u0437\u043a\u0435. \u0418\u0434\u0435\u043c \u0432 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u0443\u044e \u041c\u0430\u0434\u0436\u0435\u043d\u0442\u0443, \u0438\u0449\u0435\u043c \u0433\u0434\u0435 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d \u044d\u0442\u043e\u0442 \u043a\u043b\u0430\u0441\u0441 &#8212; \u0441\u0442\u0430\u0432\u0438\u043c \u043c\u043e\u0434\u0443\u043b\u044c:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ composer require colinmollenhour\/cache-backend-file Using version ^1.4 for colinmollenhour\/cache-backend-file .\/composer.json has been updated Running composer update colinmollenhour\/cache-backend-file Loading composer repositories with package information Updating dependencies Lock file operations: 1 install, 0 updates, 0 removals   - Locking colinmollenhour\/cache-backend-file (v1.4.5) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 1 install, 0 updates, 0 removals   - Installing colinmollenhour\/cache-backend-file (v1.4.5): Extracting archive Package container-interop\/container-interop is abandoned, you should avoid using it. Use psr\/container instead. Package laminas\/laminas-console is abandoned, you should avoid using it. Use laminas\/laminas-cli instead. Generating autoload files 45 packages you are using are looking for funding. Use the `composer fund` command to find out more! <\/code><\/pre>\n<p>\u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento PHP Fatal error:  Uncaught Error: Class 'PDO' not found in \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Model\/ConfigOptionsList.php:180 Stack trace: #0 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Model\/ConfigModel.php(71): Magento\\Setup\\Model\\ConfigOptionsList->getOptions() #1 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Console\/Command\/ConfigSetCommand.php(61): Magento\\Setup\\Model\\ConfigModel->getAvailableOptions() #2 \/var\/www\/magento-framework-check\/vendor\/symfony\/console\/Command\/Command.php(77): Magento\\Setup\\Console\\Command\\ConfigSetCommand->configure() #3 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Console\/Command\/ConfigSetCommand.php(51): Symfony\\Component\\Console\\Command\\Command->__construct() #4 \/var\/www\/magento-framework-check\/vendor\/laminas\/laminas-di\/src\/Di.php(511): Magento\\Setup\\Console\\Command\\ConfigSetCommand->__construct() #5 \/var\/www\/magento-framework-check\/vendor\/laminas\/laminas-di\/src\/Di.php(318): Laminas\\Di\\Di->createInstanceViaConstructor() #6 \/var\/www\/mage in \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Model\/ConfigOptionsList.php on line 180 <\/code><\/pre>\n<p>\u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c pdo, \u0441\u043d\u043e\u0432\u0430 \u043e\u0448\u0438\u0431\u043a\u0430:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento PHP Fatal error:  Uncaught Error: Undefined class constant 'PDO::MYSQL_ATTR_SSL_KEY' in \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Model\/ConfigOptionsList.php:180 Stack trace: #0 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Model\/ConfigModel.php(71): Magento\\Setup\\Model\\ConfigOptionsList->getOptions() #1 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Console\/Command\/ConfigSetCommand.php(61): Magento\\Setup\\Model\\ConfigModel->getAvailableOptions() #2 \/var\/www\/magento-framework-check\/vendor\/symfony\/console\/Command\/Command.php(77): Magento\\Setup\\Console\\Command\\ConfigSetCommand->configure() #3 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Console\/Command\/ConfigSetCommand.php(51): Symfony\\Component\\Console\\Command\\Command->__construct() #4 \/var\/www\/magento-framework-check\/vendor\/laminas\/laminas-di\/src\/Di.php(511): Magento\\Setup\\Console\\Command\\ConfigSetCommand->__construct() #5 \/var\/www\/magento-framework-check\/vendor\/laminas\/laminas-di\/src\/Di.php(318): Laminas\\Di\\Di->createInstanceViaC in \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Model\/ConfigOptionsList.php on line 180<\/code><\/pre>\n<p>\u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c mysqlnd \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043d\u0430\u043a\u043e\u043d\u0435\u0446 \u0432\u044b\u0432\u043e\u0434 \u0431\u0435\u0437 \u043e\u0448\u0438\u0431\u043e\u043a:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento -v Magento CLI  Usage:   command [options] [arguments]  Options:   -h, --help            Display this help message   -q, --quiet           Do not output any message   -V, --version         Display this application version       --ansi            Force ANSI output       --no-ansi         Disable ANSI output   -n, --no-interaction  Do not ask any interactive question   -v|vv|vvv, --verbose  Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug  Available commands:   help                                     Display help for a command   list                                     List commands  admin   admin:user:create                        Creates an administrator  app   app:config:import                        Import data from shared configuration files to appropriate data storage  i18n   i18n:collect-phrases                     Discovers phrases in the codebase   i18n:pack                                Saves language package  info   info:adminuri                            Displays the Magento Admin URI   info:backups:list                        Prints list of available backup files   info:currency:list                       Displays the list of available currencies   info:dependencies:show-framework         Shows number of dependencies on Magento framework   info:dependencies:show-modules           Shows number of dependencies between modules   info:dependencies:show-modules-circular  Shows number of circular dependencies between modules   info:language:list                       Displays the list of available language locales   info:timezone:list                       Displays the list of available timezones  maintenance   maintenance:allow-ips                    Sets maintenance mode exempt IPs   maintenance:disable                      Disables maintenance mode   maintenance:enable                       Enables maintenance mode   maintenance:status                       Displays maintenance mode status  module   module:config:status                     Checks the modules configuration in the 'app\/etc\/config.php' file and reports if they are up to date or not   module:disable                           Disables specified modules   module:enable                            Enables specified modules   module:status                            Displays status of modules   module:uninstall                         Uninstalls modules installed by composer  setup   setup:backup                             Takes backup of Magento Application code base, media and database   setup:config:set                         Creates or modifies the deployment configuration   setup:db-data:upgrade                    Installs and upgrades data in the DB   setup:db-schema:upgrade                  Installs and upgrades the DB schema   setup:db:status                          Checks if DB schema or data requires upgrade   setup:di:compile                         Generates DI configuration and all missing classes that can be auto-generated   setup:install                            Installs the Magento application   setup:performance:generate-fixtures      Generates fixtures   setup:rollback                           Rolls back Magento Application codebase, media and database   setup:static-content:deploy              Deploys static view files   setup:store-config:set                   Installs the store configuration. Deprecated since 2.2.0. Use config:set instead   setup:uninstall                          Uninstalls the Magento application   setup:upgrade                            Upgrades the Magento application, DB data, and schema <\/code><\/pre>\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435: \u0432\u0435\u0440\u0441\u0438\u044f Magento CLI \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u0430.<\/p>\n<h2>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Magento 2<\/h2>\n<p>\u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0434\u043b\u044f Magento \u0432\u0438\u0440\u0443\u0442\u0430\u043b\u044c\u043d\u044b\u0439 \u0445\u043e\u0441\u0442 \u0432 nginx. \u0421\u0440\u0430\u0437\u0443 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c IPv6,  HTTP\/2, HTTPS:<\/p>\n<pre><code class=\"nginx\">server {   listen 443 ssl http2;   listen [::]:443 ssl http2;   server_name magento-framework-check.loc;   ssl_certificate     \/ssl\/magento-framework-check.loc.pem;   ssl_certificate_key \/ssl\/magento-framework-check.loc-key.pem;   ssl_protocols       TLSv1 TLSv1.1 TLSv1.2;   ssl_ciphers         HIGH:!aNULL:!MD5;   set $MAGE_ROOT \/var\/www\/magento-framework-check;   include \/var\/www\/magento-framework-check\/nginx.conf.sample; } <\/code><\/pre>\n<p>\u0427\u0435\u043a\u0430\u0435\u043c, \u0447\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/9db\/a9d\/e19\/9dba9de19669cc4646ef04408bc85bc5.png\" width=\"1652\" height=\"672\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9db\/a9d\/e19\/9dba9de19669cc4646ef04408bc85bc5.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0421\u043e\u0437\u0434\u0430\u0435\u043c \u0411\u0414:<\/p>\n<pre><code class=\"sql\">MariaDB [(none)]> create database magento_framework_check; Query OK, 1 row affected (0.000 sec)<\/code><\/pre>\n<p>\u041f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0435\u043c \u043a \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento setup:install \\ > --base-url=https:\/\/magento-framework-check.loc \\ > --db-host=localhost \\ > --db-name=magento_framework_check \\ > --db-user=root \\ > --db-password=***** \\ > --backend-frontname=admin \\ > --admin-firstname=admin \\ > --admin-lastname=admin \\ > --admin-email=admin@admin.com \\ > --admin-user=tkovrijenko \\ > --admin-password=****** \\ > --language=en_US \\ > --currency=USD \\ > --timezone=Europe\/Kiev \\ > --use-rewrites=1 Starting Magento installation: File permissions check... [Progress: 1 \/ 234] Required extensions check... [Progress: 2 \/ 234] Enabling Maintenance Mode... [Progress: 3 \/ 234] Installing deployment configuration... PHP Fatal error:  Uncaught Error: Call to undefined function Magento\\Framework\\App\\DeploymentConfig\\token_get_all() in \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/App\/DeploymentConfig\/CommentParser.php:75 Stack trace: #0 \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/App\/DeploymentConfig\/Writer.php(131): Magento\\Framework\\App\\DeploymentConfig\\CommentParser->execute() #1 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Model\/ConfigModel.php(118): Magento\\Framework\\App\\DeploymentConfig\\Writer->saveConfig() #2 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Model\/Installer.php(580): Magento\\Setup\\Model\\ConfigModel->process() #3 [internal function]: Magento\\Setup\\Model\\Installer->installDeploymentConfig() #4 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Model\/Installer.php(389): call_user_func_array() #5 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Console\/Command\/InstallCommand.php(231): Magento\\Setup\\Model\\Installer->install() #6 \/var\/www\/magento-framework-check\/ve in \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/App\/DeploymentConfig\/CommentParser.php on line 75 <\/code><\/pre>\n<p>\u041f\u043e\u0445\u043e\u0436\u0435, \u0435\u0449\u0435 \u043e\u0434\u043d\u0430 \u043d\u0435\u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u043d\u0430\u044f \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c &#8212; \u043d\u0430 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u043e\u0442 \u043c\u043e\u0434\u0443\u043b\u044f PHP tokenizer. \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c&#8230;<\/p>\n<details class=\"spoiler\">\n<summary>Starting Magento Installation<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"bash\">Starting Magento installation: File permissions check... [Progress: 1 \/ 234] Required extensions check... [Progress: 2 \/ 234] Enabling Maintenance Mode... [Progress: 3 \/ 234] Installing deployment configuration... [Progress: 4 \/ 234] Installing database schema: Schema creation\/updates: Module 'Magento_Store': [Progress: 5 \/ 234] Module 'Magento_Directory': [Progress: 6 \/ 234] Module 'Magento_Config': [Progress: 7 \/ 234] Module 'Magento_Backup': [Progress: 8 \/ 234] Module 'Magento_Theme': [Progress: 9 \/ 234] Module 'Magento_Eav': [Progress: 10 \/ 234] Module 'Magento_Customer': [Progress: 11 \/ 234] Module 'Magento_CatalogImportExport': [Progress: 12 \/ 234] Module 'Magento_Indexer': [Progress: 13 \/ 234] Module 'Magento_Variable': [Progress: 14 \/ 234] Module 'Magento_Cms': [Progress: 15 \/ 234] Module 'Magento_Catalog': [Progress: 16 \/ 234] Module 'Magento_Payment': [Progress: 17 \/ 234] Module 'Magento_CmsUrlRewrite': [Progress: 18 \/ 234] Module 'Magento_Backend': [Progress: 19 \/ 234] Module 'Magento_Contact': [Progress: 20 \/ 234] Module 'Magento_Cron': [Progress: 21 \/ 234] Module 'Magento_Bundle': [Progress: 22 \/ 234] Module 'Magento_Deploy': [Progress: 23 \/ 234] Module 'Magento_Developer': [Progress: 24 \/ 234] Module 'Magento_Authorization': [Progress: 25 \/ 234] Module 'Magento_Downloadable': [Progress: 26 \/ 234] Module 'Magento_Quote': [Progress: 27 \/ 234] Module 'Magento_Email': [Progress: 28 \/ 234] Module 'Magento_Rule': [Progress: 29 \/ 234] Module 'Magento_ImportExport': [Progress: 30 \/ 234] Module 'Magento_CatalogRule': [Progress: 31 \/ 234] Module 'Magento_Security': [Progress: 32 \/ 234] Module 'Magento_MediaStorage': [Progress: 33 \/ 234] Module 'Magento_Msrp': [Progress: 34 \/ 234] Module 'Magento_Widget': [Progress: 35 \/ 234] Module 'Magento_PageCache': [Progress: 36 \/ 234] Module 'Magento_SalesSequence': [Progress: 37 \/ 234] Module 'Magento_ProductAlert': [Progress: 38 \/ 234] Module 'Magento_Sales': [Progress: 39 \/ 234] Module 'Magento_Reports': [Progress: 40 \/ 234] Module 'Magento_RequireJs': [Progress: 41 \/ 234] Module 'Magento_Review': [Progress: 42 \/ 234] Module 'Magento_Rss': [Progress: 43 \/ 234] Module 'Magento_GiftMessage': [Progress: 44 \/ 234] Module 'Magento_CatalogInventory': [Progress: 45 \/ 234] Module 'Magento_SalesRule': [Progress: 46 \/ 234] Module 'Magento_Checkout': [Progress: 47 \/ 234] Module 'Magento_User': [Progress: 48 \/ 234] Module 'Magento_Ui': [Progress: 49 \/ 234] Module 'Magento_AsynchronousOperations': [Progress: 50 \/ 234] Module 'Magento_Tax': [Progress: 51 \/ 234] Module 'Magento_CatalogUrlRewrite': [Progress: 52 \/ 234] Module 'Magento_Translation': [Progress: 53 \/ 234] Module 'Magento_Shipping': [Progress: 54 \/ 234] Module 'Magento_UrlRewrite': [Progress: 55 \/ 234] Module 'Magento_Integration': [Progress: 56 \/ 234] Module 'Magento_Captcha': [Progress: 57 \/ 234] Module 'Magento_Newsletter': [Progress: 58 \/ 234] Module 'Magento_Wishlist': [Progress: 59 \/ 234] Schema post-updates: Module 'Magento_Store': [Progress: 60 \/ 234] Module 'Magento_Directory': [Progress: 61 \/ 234] Module 'Magento_Config': [Progress: 62 \/ 234] Module 'Magento_Backup': [Progress: 63 \/ 234] Module 'Magento_Theme': [Progress: 64 \/ 234] Module 'Magento_Eav': [Progress: 65 \/ 234] Module 'Magento_Customer': [Progress: 66 \/ 234] Module 'Magento_CatalogImportExport': [Progress: 67 \/ 234] Module 'Magento_Indexer': Running schema recurring... [Progress: 68 \/ 234] Module 'Magento_Variable': [Progress: 69 \/ 234] Module 'Magento_Cms': [Progress: 70 \/ 234] Module 'Magento_Catalog': Running schema recurring... [Progress: 71 \/ 234] Module 'Magento_Payment': [Progress: 72 \/ 234] Module 'Magento_CmsUrlRewrite': [Progress: 73 \/ 234] Module 'Magento_Backend': [Progress: 74 \/ 234] Module 'Magento_Contact': [Progress: 75 \/ 234] Module 'Magento_Cron': Running schema recurring... [Progress: 76 \/ 234] Module 'Magento_Bundle': Running schema recurring... [Progress: 77 \/ 234] Module 'Magento_Deploy': [Progress: 78 \/ 234] Module 'Magento_Developer': [Progress: 79 \/ 234] Module 'Magento_Authorization': [Progress: 80 \/ 234] Module 'Magento_Downloadable': [Progress: 81 \/ 234] Module 'Magento_Quote': [Progress: 82 \/ 234] Module 'Magento_Email': [Progress: 83 \/ 234] Module 'Magento_Rule': [Progress: 84 \/ 234] Module 'Magento_ImportExport': [Progress: 85 \/ 234] Module 'Magento_CatalogRule': [Progress: 86 \/ 234] Module 'Magento_Security': [Progress: 87 \/ 234] Module 'Magento_MediaStorage': [Progress: 88 \/ 234] Module 'Magento_Msrp': [Progress: 89 \/ 234] Module 'Magento_Widget': [Progress: 90 \/ 234] Module 'Magento_PageCache': [Progress: 91 \/ 234] Module 'Magento_SalesSequence': Running schema recurring... [Progress: 92 \/ 234] Module 'Magento_ProductAlert': Running schema recurring... [Progress: 93 \/ 234] Module 'Magento_Sales': [Progress: 94 \/ 234] Module 'Magento_Reports': Running schema recurring... [Progress: 95 \/ 234] Module 'Magento_RequireJs': [Progress: 96 \/ 234] Module 'Magento_Review': [Progress: 97 \/ 234] Module 'Magento_Rss': [Progress: 98 \/ 234] Module 'Magento_GiftMessage': [Progress: 99 \/ 234] Module 'Magento_CatalogInventory': Running schema recurring... [Progress: 100 \/ 234] Module 'Magento_SalesRule': [Progress: 101 \/ 234] Module 'Magento_Checkout': [Progress: 102 \/ 234] Module 'Magento_User': [Progress: 103 \/ 234] Module 'Magento_Ui': [Progress: 104 \/ 234] Module 'Magento_AsynchronousOperations': [Progress: 105 \/ 234] Module 'Magento_Tax': [Progress: 106 \/ 234] Module 'Magento_CatalogUrlRewrite': Running schema recurring... [Progress: 107 \/ 234] Module 'Magento_Translation': [Progress: 108 \/ 234] Module 'Magento_Shipping': [Progress: 109 \/ 234] Module 'Magento_UrlRewrite': [Progress: 110 \/ 234] Module 'Magento_Integration': Running schema recurring... [Progress: 111 \/ 234] Module 'Magento_Captcha': [Progress: 112 \/ 234] Module 'Magento_Newsletter': [Progress: 113 \/ 234] Module 'Magento_Wishlist': Running schema recurring... [Progress: 114 \/ 234] [Progress: 115 \/ 234] Installing search configuration...  In ClassReader.php line 45:                                                                                                                                                                                     Impossible to process constructor argument Parameter #1 [ &lt;required> Magento\\Search\\Model\\SearchEngine\\Validator $searchValidator ] of Magento\\Setup\\Model\\SearchConfig class                                                                                                                                                                                      In ClassReader.php line 34:                                                                        Class Magento\\Search\\Model\\SearchEngine\\Validator does not exist                                                                        <\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u041d\u0430 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u043f\u0440\u043e\u0434\u0432\u0438\u043d\u0443\u043b\u0438\u0441\u044c \u0447\u0443\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435. \u041d\u043e \u0441 \u0447\u0435\u0433\u043e \u0432\u0434\u0440\u0443\u0433 \u043d\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u0441\u044f \u043c\u043e\u0434\u0443\u043b\u044c \u043f\u043e\u0438\u0441\u043a\u0430? \u0410 Magento \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0443\u0435\u0442 \u0435\u0433\u043e \u0432 \\Magento\\Setup\\Model\\SearchConfig \u0434\u0430\u0436\u0435 \u043d\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0432, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u043b\u0438 \u043e\u043d. \u0421\u0442\u0430\u0432\u0438\u043c:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ composer require magento\/module-search Using version ^101.1 for magento\/module-search .\/composer.json has been updated Running composer update magento\/module-search Loading composer repositories with package information Updating dependencies Lock file operations: 2 installs, 0 updates, 0 removals   - Locking magento\/module-catalog-search (102.0.2)   - Locking magento\/module-search (101.1.2) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 2 installs, 0 updates, 0 removals   - Installing magento\/module-search (101.1.2): Extracting archive   - Installing magento\/module-catalog-search (102.0.2): Extracting archive Package container-interop\/container-interop is abandoned, you should avoid using it. Use psr\/container instead. Package laminas\/laminas-console is abandoned, you should avoid using it. Use laminas\/laminas-cli instead. Generating autoload files 45 packages you are using are looking for funding. Use the `composer fund` command to find out more! <\/code><\/pre>\n<p> \u041a \u0441\u0447\u0430\u0441\u0442\u044c\u044e \u0435\u0449\u0435 100 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u0441 \u043d\u0438\u043c \u043d\u0435 \u043f\u043e\u0434\u0442\u044f\u043d\u0443\u043b\u043e\u0441\u044c \ud83d\ude42<\/p>\n<p>\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u043c:<\/p>\n<details class=\"spoiler\">\n<summary>Starting Magento Installation<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"bash\">Starting Magento installation: File permissions check... [Progress: 1 \/ 242] Required extensions check... [Progress: 2 \/ 242] Enabling Maintenance Mode... [Progress: 3 \/ 242] Installing deployment configuration... [Progress: 4 \/ 242] Installing database schema: Schema creation\/updates: Module 'Magento_Store': [Progress: 5 \/ 242] Module 'Magento_Directory': [Progress: 6 \/ 242] Module 'Magento_Config': [Progress: 7 \/ 242] Module 'Magento_Backup': [Progress: 8 \/ 242] Module 'Magento_Theme': [Progress: 9 \/ 242] Module 'Magento_Eav': [Progress: 10 \/ 242] Module 'Magento_Customer': [Progress: 11 \/ 242] Module 'Magento_CatalogImportExport': [Progress: 12 \/ 242] Module 'Magento_Indexer': [Progress: 13 \/ 242] Module 'Magento_Variable': [Progress: 14 \/ 242] Module 'Magento_Cms': [Progress: 15 \/ 242] Module 'Magento_Catalog': [Progress: 16 \/ 242] Module 'Magento_Payment': [Progress: 17 \/ 242] Module 'Magento_Quote': [Progress: 18 \/ 242] Module 'Magento_CmsUrlRewrite': [Progress: 19 \/ 242] Module 'Magento_Backend': [Progress: 20 \/ 242] Module 'Magento_Contact': [Progress: 21 \/ 242] Module 'Magento_Cron': [Progress: 22 \/ 242] Module 'Magento_Bundle': [Progress: 23 \/ 242] Module 'Magento_Deploy': [Progress: 24 \/ 242] Module 'Magento_Developer': [Progress: 25 \/ 242] Module 'Magento_Authorization': [Progress: 26 \/ 242] Module 'Magento_Downloadable': [Progress: 27 \/ 242] Module 'Magento_Rule': [Progress: 28 \/ 242] Module 'Magento_Email': [Progress: 29 \/ 242] Module 'Magento_SalesSequence': [Progress: 30 \/ 242] Module 'Magento_ImportExport': [Progress: 31 \/ 242] Module 'Magento_CatalogRule': [Progress: 32 \/ 242] Module 'Magento_Security': [Progress: 33 \/ 242] Module 'Magento_MediaStorage': [Progress: 34 \/ 242] Module 'Magento_Msrp': [Progress: 35 \/ 242] Module 'Magento_Widget': [Progress: 36 \/ 242] Module 'Magento_PageCache': [Progress: 37 \/ 242] Module 'Magento_Sales': [Progress: 38 \/ 242] Module 'Magento_ProductAlert': [Progress: 39 \/ 242] Module 'Magento_CatalogInventory': [Progress: 40 \/ 242] Module 'Magento_Reports': [Progress: 41 \/ 242] Module 'Magento_RequireJs': [Progress: 42 \/ 242] Module 'Magento_Review': [Progress: 43 \/ 242] Module 'Magento_Rss': [Progress: 44 \/ 242] Module 'Magento_Search': [Progress: 45 \/ 242] Module 'Magento_GiftMessage': [Progress: 46 \/ 242] Module 'Magento_SalesRule': [Progress: 47 \/ 242] Module 'Magento_Checkout': [Progress: 48 \/ 242] Module 'Magento_CatalogSearch': [Progress: 49 \/ 242] Module 'Magento_User': [Progress: 50 \/ 242] Module 'Magento_Ui': [Progress: 51 \/ 242] Module 'Magento_AsynchronousOperations': [Progress: 52 \/ 242] Module 'Magento_Tax': [Progress: 53 \/ 242] Module 'Magento_Captcha': [Progress: 54 \/ 242] Module 'Magento_Translation': [Progress: 55 \/ 242] Module 'Magento_Shipping': [Progress: 56 \/ 242] Module 'Magento_UrlRewrite': [Progress: 57 \/ 242] Module 'Magento_Integration': [Progress: 58 \/ 242] Module 'Magento_CatalogUrlRewrite': [Progress: 59 \/ 242] Module 'Magento_Newsletter': [Progress: 60 \/ 242] Module 'Magento_Wishlist': [Progress: 61 \/ 242] Schema post-updates: Module 'Magento_Store': [Progress: 62 \/ 242] Module 'Magento_Directory': [Progress: 63 \/ 242] Module 'Magento_Config': [Progress: 64 \/ 242] Module 'Magento_Backup': [Progress: 65 \/ 242] Module 'Magento_Theme': [Progress: 66 \/ 242] Module 'Magento_Eav': [Progress: 67 \/ 242] Module 'Magento_Customer': [Progress: 68 \/ 242] Module 'Magento_CatalogImportExport': [Progress: 69 \/ 242] Module 'Magento_Indexer': Running schema recurring... [Progress: 70 \/ 242] Module 'Magento_Variable': [Progress: 71 \/ 242] Module 'Magento_Cms': [Progress: 72 \/ 242] Module 'Magento_Catalog': Running schema recurring... [Progress: 73 \/ 242] Module 'Magento_Payment': [Progress: 74 \/ 242] Module 'Magento_Quote': [Progress: 75 \/ 242] Module 'Magento_CmsUrlRewrite': [Progress: 76 \/ 242] Module 'Magento_Backend': [Progress: 77 \/ 242] Module 'Magento_Contact': [Progress: 78 \/ 242] Module 'Magento_Cron': Running schema recurring... [Progress: 79 \/ 242] Module 'Magento_Bundle': Running schema recurring... [Progress: 80 \/ 242] Module 'Magento_Deploy': [Progress: 81 \/ 242] Module 'Magento_Developer': [Progress: 82 \/ 242] Module 'Magento_Authorization': [Progress: 83 \/ 242] Module 'Magento_Downloadable': [Progress: 84 \/ 242] Module 'Magento_Rule': [Progress: 85 \/ 242] Module 'Magento_Email': [Progress: 86 \/ 242] Module 'Magento_SalesSequence': Running schema recurring... [Progress: 87 \/ 242] Module 'Magento_ImportExport': [Progress: 88 \/ 242] Module 'Magento_CatalogRule': [Progress: 89 \/ 242] Module 'Magento_Security': [Progress: 90 \/ 242] Module 'Magento_MediaStorage': [Progress: 91 \/ 242] Module 'Magento_Msrp': [Progress: 92 \/ 242] Module 'Magento_Widget': [Progress: 93 \/ 242] Module 'Magento_PageCache': [Progress: 94 \/ 242] Module 'Magento_Sales': [Progress: 95 \/ 242] Module 'Magento_ProductAlert': Running schema recurring... [Progress: 96 \/ 242] Module 'Magento_CatalogInventory': Running schema recurring... [Progress: 97 \/ 242] Module 'Magento_Reports': Running schema recurring... [Progress: 98 \/ 242] Module 'Magento_RequireJs': [Progress: 99 \/ 242] Module 'Magento_Review': [Progress: 100 \/ 242] Module 'Magento_Rss': [Progress: 101 \/ 242] Module 'Magento_Search': [Progress: 102 \/ 242] Module 'Magento_GiftMessage': [Progress: 103 \/ 242] Module 'Magento_SalesRule': [Progress: 104 \/ 242] Module 'Magento_Checkout': [Progress: 105 \/ 242] Module 'Magento_CatalogSearch': [Progress: 106 \/ 242] Module 'Magento_User': [Progress: 107 \/ 242] Module 'Magento_Ui': [Progress: 108 \/ 242] Module 'Magento_AsynchronousOperations': [Progress: 109 \/ 242] Module 'Magento_Tax': [Progress: 110 \/ 242] Module 'Magento_Captcha': [Progress: 111 \/ 242] Module 'Magento_Translation': [Progress: 112 \/ 242] Module 'Magento_Shipping': [Progress: 113 \/ 242] Module 'Magento_UrlRewrite': [Progress: 114 \/ 242] Module 'Magento_Integration': Running schema recurring... [Progress: 115 \/ 242] Module 'Magento_CatalogUrlRewrite': Running schema recurring... [Progress: 116 \/ 242] Module 'Magento_Newsletter': [Progress: 117 \/ 242] Module 'Magento_Wishlist': Running schema recurring... [Progress: 118 \/ 242] [Progress: 119 \/ 242] Installing search configuration... [Progress: 120 \/ 242] Installing user configuration... [Progress: 121 \/ 242] Enabling caches: Current status: config: 1 layout: 1 block_html: 1 collections: 1 reflection: 1 db_ddl: 1 compiled_config: 1 eav: 1 customer_notification: 1 full_page: 1 translate: 1 config_integration: 1 config_integration_api: 1 [Progress: 122 \/ 242] Installing data... Data install\/update: Disabling caches: Current status: layout: 0 block_html: 0 full_page: 0 Module 'Magento_Store': [Progress: 123 \/ 242] Module 'Magento_Directory': [Progress: 124 \/ 242] Module 'Magento_Config': [Progress: 125 \/ 242] Module 'Magento_Backup': [Progress: 126 \/ 242] Module 'Magento_Theme': [Progress: 127 \/ 242] Module 'Magento_Eav': [Progress: 128 \/ 242] Module 'Magento_Customer': [Progress: 129 \/ 242] Module 'Magento_CatalogImportExport': [Progress: 130 \/ 242] Module 'Magento_Indexer': [Progress: 131 \/ 242] Module 'Magento_Variable': [Progress: 132 \/ 242] Module 'Magento_Cms': [Progress: 133 \/ 242] Module 'Magento_Catalog': [Progress: 134 \/ 242] Module 'Magento_Payment': [Progress: 135 \/ 242] Module 'Magento_Quote': [Progress: 136 \/ 242] Module 'Magento_CmsUrlRewrite': [Progress: 137 \/ 242] Module 'Magento_Backend': [Progress: 138 \/ 242] Module 'Magento_Contact': [Progress: 139 \/ 242] Module 'Magento_Cron': [Progress: 140 \/ 242] Module 'Magento_Bundle': [Progress: 141 \/ 242] Module 'Magento_Deploy': [Progress: 142 \/ 242] Module 'Magento_Developer': [Progress: 143 \/ 242] Module 'Magento_Authorization': [Progress: 144 \/ 242] Module 'Magento_Downloadable': [Progress: 145 \/ 242] Module 'Magento_Rule': [Progress: 146 \/ 242] Module 'Magento_Email': [Progress: 147 \/ 242] Module 'Magento_SalesSequence': [Progress: 148 \/ 242] Module 'Magento_ImportExport': [Progress: 149 \/ 242] Module 'Magento_CatalogRule': [Progress: 150 \/ 242] Module 'Magento_Security': [Progress: 151 \/ 242] Module 'Magento_MediaStorage': [Progress: 152 \/ 242] Module 'Magento_Msrp': [Progress: 153 \/ 242] Module 'Magento_Widget': [Progress: 154 \/ 242] Module 'Magento_PageCache': [Progress: 155 \/ 242] Module 'Magento_Sales': [Progress: 156 \/ 242] Module 'Magento_ProductAlert': [Progress: 157 \/ 242] Module 'Magento_CatalogInventory': [Progress: 158 \/ 242] Module 'Magento_Reports': [Progress: 159 \/ 242] Module 'Magento_RequireJs': [Progress: 160 \/ 242] Module 'Magento_Review': [Progress: 161 \/ 242] Module 'Magento_Rss': [Progress: 162 \/ 242] Module 'Magento_Search': [Progress: 163 \/ 242] Module 'Magento_GiftMessage': [Progress: 164 \/ 242] Module 'Magento_SalesRule': [Progress: 165 \/ 242] Module 'Magento_Checkout': [Progress: 166 \/ 242] Module 'Magento_CatalogSearch': [Progress: 167 \/ 242] Module 'Magento_User': [Progress: 168 \/ 242] Module 'Magento_Ui': [Progress: 169 \/ 242] Module 'Magento_AsynchronousOperations': [Progress: 170 \/ 242] Module 'Magento_Tax': [Progress: 171 \/ 242] Module 'Magento_Captcha': [Progress: 172 \/ 242] Module 'Magento_Translation': [Progress: 173 \/ 242] Module 'Magento_Shipping': [Progress: 174 \/ 242] Module 'Magento_UrlRewrite': [Progress: 175 \/ 242] Module 'Magento_Integration': [Progress: 176 \/ 242] Module 'Magento_CatalogUrlRewrite': [Progress: 177 \/ 242] Module 'Magento_Newsletter': [Progress: 178 \/ 242] Module 'Magento_Wishlist': [Progress: 179 \/ 242] Data post-updates: Module 'Magento_Store': [Progress: 180 \/ 242] Module 'Magento_Directory': [Progress: 181 \/ 242] Module 'Magento_Config': [Progress: 182 \/ 242] Module 'Magento_Backup': [Progress: 183 \/ 242] Module 'Magento_Theme': Running data recurring... [Progress: 184 \/ 242] Module 'Magento_Eav': [Progress: 185 \/ 242] Module 'Magento_Customer': Running data recurring... [Progress: 186 \/ 242] Module 'Magento_CatalogImportExport': [Progress: 187 \/ 242] Module 'Magento_Indexer': [Progress: 188 \/ 242] Module 'Magento_Variable': [Progress: 189 \/ 242] Module 'Magento_Cms': [Progress: 190 \/ 242] Module 'Magento_Catalog': [Progress: 191 \/ 242] Module 'Magento_Payment': [Progress: 192 \/ 242] Module 'Magento_Quote': [Progress: 193 \/ 242] Module 'Magento_CmsUrlRewrite': [Progress: 194 \/ 242] Module 'Magento_Backend': [Progress: 195 \/ 242] Module 'Magento_Contact': [Progress: 196 \/ 242] Module 'Magento_Cron': [Progress: 197 \/ 242] Module 'Magento_Bundle': [Progress: 198 \/ 242] Module 'Magento_Deploy': [Progress: 199 \/ 242] Module 'Magento_Developer': [Progress: 200 \/ 242] Module 'Magento_Authorization': [Progress: 201 \/ 242] Module 'Magento_Downloadable': [Progress: 202 \/ 242] Module 'Magento_Rule': [Progress: 203 \/ 242] Module 'Magento_Email': [Progress: 204 \/ 242] Module 'Magento_SalesSequence': Running data recurring... [Progress: 205 \/ 242] Module 'Magento_ImportExport': [Progress: 206 \/ 242] Module 'Magento_CatalogRule': [Progress: 207 \/ 242] Module 'Magento_Security': [Progress: 208 \/ 242] Module 'Magento_MediaStorage': [Progress: 209 \/ 242] Module 'Magento_Msrp': [Progress: 210 \/ 242] Module 'Magento_Widget': [Progress: 211 \/ 242] Module 'Magento_PageCache': [Progress: 212 \/ 242] Module 'Magento_Sales': [Progress: 213 \/ 242] Module 'Magento_ProductAlert': [Progress: 214 \/ 242] Module 'Magento_CatalogInventory': [Progress: 215 \/ 242] Module 'Magento_Reports': [Progress: 216 \/ 242] Module 'Magento_RequireJs': [Progress: 217 \/ 242] Module 'Magento_Review': [Progress: 218 \/ 242] Module 'Magento_Rss': [Progress: 219 \/ 242] Module 'Magento_Search': [Progress: 220 \/ 242] Module 'Magento_GiftMessage': [Progress: 221 \/ 242] Module 'Magento_SalesRule': [Progress: 222 \/ 242] Module 'Magento_Checkout': [Progress: 223 \/ 242] Module 'Magento_CatalogSearch': [Progress: 224 \/ 242] Module 'Magento_User': [Progress: 225 \/ 242] Module 'Magento_Ui': [Progress: 226 \/ 242] Module 'Magento_AsynchronousOperations': [Progress: 227 \/ 242] Module 'Magento_Tax': [Progress: 228 \/ 242] Module 'Magento_Captcha': [Progress: 229 \/ 242] Module 'Magento_Translation': [Progress: 230 \/ 242] Module 'Magento_Shipping': [Progress: 231 \/ 242] Module 'Magento_UrlRewrite': [Progress: 232 \/ 242] Module 'Magento_Integration': [Progress: 233 \/ 242] Module 'Magento_CatalogUrlRewrite': [Progress: 234 \/ 242] Module 'Magento_Newsletter': [Progress: 235 \/ 242] Module 'Magento_Wishlist': [Progress: 236 \/ 242] Enabling caches: Current status: layout: 1 block_html: 1 full_page: 1 [Progress: 237 \/ 242] Installing admin user... [Progress: 238 \/ 242] Caches clearing: Cache cleared successfully [Progress: 239 \/ 242] Disabling Maintenance Mode: [Progress: 240 \/ 242] Post installation file permissions check... For security, remove write permissions from these directories: '\/var\/www\/magento-framework-check\/app\/etc' [Progress: 241 \/ 242] Write installation date... [Progress: 242 \/ 242] [SUCCESS]: Magento installation complete. [SUCCESS]: Magento Admin URI: \/admin Nothing to import. taras@taras-home:\/var\/www\/magento-framework-check$  <\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u041c\u043e\u0436\u043d\u043e \u0432\u044b\u0434\u043e\u0445\u043d\u0443\u0442\u044c. \u0412\u0440\u043e\u0434\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u043e\u0441\u044c. \u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c <code>bin\/magento deploy:mode:set developer<\/code> \u0438 \u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0437\u0430\u0439\u0442\u0438 \u043d\u0430 \u0441\u0430\u0439\u0442:<\/p>\n<pre><code>1 exception(s): Exception #0 (LogicException): Unable to load theme by specified key: 'Magento\/luma'  Exception #0 (LogicException): Unable to load theme by specified key: 'Magento\/luma' &lt;pre>#1 Magento\\Theme\\Model\\View\\Design->setDesignTheme() called at [vendor\/magento\/module-theme\/Model\/View\/Design.php:212] #2 Magento\\Theme\\Model\\View\\Design->setDefaultDesignTheme() called at [vendor\/magento\/framework\/App\/Area.php:261] #3 Magento\\Framework\\App\\Area->_initDesign() called at [vendor\/magento\/framework\/App\/Area.php:219] #4 Magento\\Framework\\App\\Area->_loadPart() called at [vendor\/magento\/framework\/App\/Area.php:143] #5 Magento\\Framework\\App\\Area->load() called at [vendor\/magento\/framework\/View\/DesignLoader.php:54] #6 Magento\\Framework\\View\\DesignLoader->load() called at [vendor\/magento\/module-theme\/Plugin\/LoadDesignPlugin.php:53] #7 Magento\\Theme\\Plugin\\LoadDesignPlugin->beforeExecute() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:121] #8 Magento\\Cms\\Controller\\Index\\Index\\Interceptor->Magento\\Framework\\Interception\\{closure}() called at [vendor\/magento\/framework\/App\/Action\/Plugin\/ActionFlagNoDispatchPlugin.php:51] #9 Magento\\Framework\\App\\Action\\Plugin\\ActionFlagNoDispatchPlugin->aroundExecute() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:135] #10 Magento\\Cms\\Controller\\Index\\Index\\Interceptor->Magento\\Framework\\Interception\\{closure}() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:153] #11 Magento\\Cms\\Controller\\Index\\Index\\Interceptor->___callPlugins() called at [generated\/code\/Magento\/Cms\/Controller\/Index\/Index\/Interceptor.php:23] #12 Magento\\Cms\\Controller\\Index\\Index\\Interceptor->execute() called at [vendor\/magento\/framework\/App\/Action\/Action.php:111] #13 Magento\\Framework\\App\\Action\\Action->dispatch() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:58] #14 Magento\\Cms\\Controller\\Index\\Index\\Interceptor->___callParent() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:138] #15 Magento\\Cms\\Controller\\Index\\Index\\Interceptor->Magento\\Framework\\Interception\\{closure}() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:153] #16 Magento\\Cms\\Controller\\Index\\Index\\Interceptor->___callPlugins() called at [generated\/code\/Magento\/Cms\/Controller\/Index\/Index\/Interceptor.php:32] #17 Magento\\Cms\\Controller\\Index\\Index\\Interceptor->dispatch() called at [vendor\/magento\/framework\/App\/FrontController.php:186] #18 Magento\\Framework\\App\\FrontController->processRequest() called at [vendor\/magento\/framework\/App\/FrontController.php:118] #19 Magento\\Framework\\App\\FrontController->dispatch() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:58] #20 Magento\\Framework\\App\\FrontController\\Interceptor->___callParent() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:138] #21 Magento\\Framework\\App\\FrontController\\Interceptor->Magento\\Framework\\Interception\\{closure}() called at [vendor\/magento\/module-store\/App\/FrontController\/Plugin\/RequestPreprocessor.php:99] #22 Magento\\Store\\App\\FrontController\\Plugin\\RequestPreprocessor->aroundDispatch() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:135] #23 Magento\\Framework\\App\\FrontController\\Interceptor->Magento\\Framework\\Interception\\{closure}() called at [vendor\/magento\/module-page-cache\/Model\/App\/FrontController\/BuiltinPlugin.php:75] #24 Magento\\PageCache\\Model\\App\\FrontController\\BuiltinPlugin->aroundDispatch() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:135] #25 Magento\\Framework\\App\\FrontController\\Interceptor->Magento\\Framework\\Interception\\{closure}() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:153] #26 Magento\\Framework\\App\\FrontController\\Interceptor->___callPlugins() called at [generated\/code\/Magento\/Framework\/App\/FrontController\/Interceptor.php:23] #27 Magento\\Framework\\App\\FrontController\\Interceptor->dispatch() called at [vendor\/magento\/framework\/App\/Http.php:116] #28 Magento\\Framework\\App\\Http->launch() called at [vendor\/magento\/framework\/App\/Bootstrap.php:263] #29 Magento\\Framework\\App\\Bootstrap->run() called at [pub\/index.php:29] &lt;\/pre><\/code><\/pre>\n<p>\u0427\u0435\u043c \u0433\u043b\u0443\u0431\u0436\u0435 \u0432 \u043b\u0435\u0441, \u0442\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u0440\u043e\u0432. \u041f\u043e\u0447\u0435\u043c\u0443 Luma? \u042f \u0431\u044b \u043f\u043e\u043d\u044f\u043b, \u0435\u0441\u043b\u0438 \u0431\u044b \u043e\u043d\u043e \u0438\u0441\u043a\u0430\u043b\u043e \u0442\u0435\u043c\u0443 Magento\/blank, \u043d\u043e&#8230; \u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e, \u0432 <code>vendor\/magento\/module-theme\/etc\/di.xml:63<\/code> \u044f\u0432\u043d\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u0441\u044f \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c Luma:<\/p>\n<pre><code class=\"xml\">&lt;type name=\"Magento\\Theme\\Model\\View\\Design\">   &lt;arguments>     &lt;argument name=\"themes\" xsi:type=\"array\">       &lt;item name=\"frontend\" xsi:type=\"string\">Magento\/luma&lt;\/item>       &lt;item name=\"adminhtml\" xsi:type=\"string\">Magento\/backend&lt;\/item>     &lt;\/argument>   &lt;\/arguments> &lt;\/type><\/code><\/pre>\n<p>\u041d\u0443, \u0433\u0434\u0435 Luma, \u0442\u0430\u043c \u0438 Blank:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ composer require magento\/theme-frontend-luma Using version ^100.4 for magento\/theme-frontend-luma .\/composer.json has been updated Running composer update magento\/theme-frontend-luma Loading composer repositories with package information Updating dependencies Lock file operations: 2 installs, 0 updates, 0 removals   - Locking magento\/theme-frontend-blank (100.4.2)   - Locking magento\/theme-frontend-luma (100.4.2) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 2 installs, 0 updates, 0 removals   - Installing magento\/theme-frontend-blank (100.4.2): Extracting archive   - Installing magento\/theme-frontend-luma (100.4.2): Extracting archive Package container-interop\/container-interop is abandoned, you should avoid using it. Use psr\/container instead. Package laminas\/laminas-console is abandoned, you should avoid using it. Use laminas\/laminas-cli instead. Generating autoload files 45 packages you are using are looking for funding. Use the `composer fund` command to find out more!<\/code><\/pre>\n<p>\u0418 \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u043d\u0435 \u0437\u0430\u0431\u044b\u0432\u0430\u0435\u043c \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u043e <code>bin\/magento setup:upgrade<\/code>. \u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/1d6\/788\/107\/1d67881076eba57f5ffabe6b7c27dd5b.png\" width=\"3206\" height=\"2126\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/1d6\/788\/107\/1d67881076eba57f5ffabe6b7c27dd5b.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0422\u0430\u043a-\u0441, \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u043b\u0430\u0441\u044c, \u043d\u043e \u0435\u0441\u0442\u044c \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0442\u0440\u0430\u0431\u043b\u044b \u0441 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432. \u0421\u043c\u043e\u0442\u0440\u0438\u043c \u043b\u043e\u0433 \u0438 \u0432\u0438\u0434\u0438\u043c \u043f\u0430\u0447\u043a\u0443 \u0432\u043e\u0442 \u0442\u0430\u043a\u0438\u0445 \u043e\u0448\u0438\u0431\u043e\u043a:<\/p>\n<pre><code>[2021-08-06 14:34:06] main.ERROR: Notice: Trying to access array offset on value of type bool in \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/Filesystem\/Driver\/File\/Mime.php on line 116 [] [] [2021-08-06 14:34:06] main.CRITICAL: Notice: Trying to access array offset on value of type bool in \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/Filesystem\/Driver\/File\/Mime.php on line 116 [] []<\/code><\/pre>\n<p>\u0418\u0434\u0435\u043c \u0432 \u043a\u043e\u0434:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/aca\/846\/51d\/aca84651d195170cb7f67320539b210b.png\" width=\"924\" height=\"334\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/aca\/846\/51d\/aca84651d195170cb7f67320539b210b.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0417\u0434\u0435\u0441\u044c \u041c\u0430\u0434\u0436\u0435\u043d\u0442\u0430 \u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0431\u0435\u0437 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438\u0437 ext-fileinfo, \u0438 \u044d\u0442\u043e \u0443 \u043d\u0435\u0451 \u044f\u0432\u043d\u043e \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f. \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u0438 \u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0441\u043d\u043e\u0432\u0430:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/849\/ebe\/ebb\/849ebeebb699d870619b508755d6680d.png\" width=\"2550\" height=\"1384\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/849\/ebe\/ebb\/849ebeebb699d870619b508755d6680d.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0427\u0438\u0441\u0442\u043e. \u041d\u0430\u043a\u043e\u043d\u0435\u0446-\u0442\u043e. \u0410 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0437\u0430\u0439\u0442\u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438:<\/p>\n<details class=\"spoiler\">\n<summary>2 exceptions<\/summary>\n<div class=\"spoiler__content\">\n<pre><code>2 exception(s): Exception #0 (Magento\\Framework\\Exception\\LocalizedException): Invalid block type: Magento\\Cookie\\Block\\RequireCookie Exception #1 (ReflectionException): Class Magento\\Cookie\\Block\\RequireCookie does not exist  Exception #0 (Magento\\Framework\\Exception\\LocalizedException): Invalid block type: Magento\\Cookie\\Block\\RequireCookie &lt;pre>#1 Magento\\Framework\\View\\Layout\\Generator\\Block->createBlock() called at [vendor\/magento\/framework\/View\/Layout\/Generator\/Block.php:229] #2 Magento\\Framework\\View\\Layout\\Generator\\Block->generateBlock() called at [vendor\/magento\/framework\/View\/Layout\/Generator\/Block.php:134] #3 Magento\\Framework\\View\\Layout\\Generator\\Block->process() called at [vendor\/magento\/framework\/View\/Layout\/GeneratorPool.php:93] #4 Magento\\Framework\\View\\Layout\\GeneratorPool->process() called at [vendor\/magento\/framework\/View\/Layout.php:365] #5 Magento\\Framework\\View\\Layout->generateElements() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:58] #6 Magento\\Framework\\View\\Layout\\Interceptor->___callParent() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:138] #7 Magento\\Framework\\View\\Layout\\Interceptor->Magento\\Framework\\Interception{closure}() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:153] #8 Magento\\Framework\\View\\Layout\\Interceptor->___callPlugins() called at [generated\/code\/Magento\/Framework\/View\/Layout\/Interceptor.php:68] #9 Magento\\Framework\\View\\Layout\\Interceptor->generateElements() called at [vendor\/magento\/framework\/View\/Layout\/Builder.php:129] #10 Magento\\Framework\\View\\Layout\\Builder->generateLayoutBlocks() called at [vendor\/magento\/framework\/View\/Page\/Builder.php:65] #11 Magento\\Framework\\View\\Page\\Builder->generateLayoutBlocks() called at [vendor\/magento\/framework\/View\/Layout\/Builder.php:65] #12 Magento\\Framework\\View\\Layout\\Builder->build() called at [vendor\/magento\/framework\/View\/Page\/Config.php:224] #13 Magento\\Framework\\View\\Page\\Config->build() called at [vendor\/magento\/framework\/View\/Page\/Config.php:237] #14 Magento\\Framework\\View\\Page\\Config->publicBuild() called at [vendor\/magento\/framework\/View\/Result\/Page.php:242] #15 Magento\\Framework\\View\\Result\\Page->render() called at [vendor\/magento\/framework\/View\/Result\/Layout.php:171] #16 Magento\\Framework\\View\\Result\\Layout->renderResult() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:58] #17 Magento\\Framework\\View\\Result\\Page\\Interceptor->___callParent() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:138] #18 Magento\\Framework\\View\\Result\\Page\\Interceptor->Magento\\Framework\\Interception{closure}() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:153] #19 Magento\\Framework\\View\\Result\\Page\\Interceptor->___callPlugins() called at [generated\/code\/Magento\/Framework\/View\/Result\/Page\/Interceptor.php:95] #20 Magento\\Framework\\View\\Result\\Page\\Interceptor->renderResult() called at [vendor\/magento\/framework\/App\/Http.php:120] #21 Magento\\Framework\\App\\Http->launch() called at [vendor\/magento\/framework\/App\/Bootstrap.php:263] #22 Magento\\Framework\\App\\Bootstrap->run() called at [pub\/index.php:29] &lt;\/pre> Exception #1 (ReflectionException): Class Magento\\Cookie\\Block\\RequireCookie does not exist &lt;pre>#1 Magento\\Framework\\Code\\Reader\\ClassReader->getConstructor() called at [vendor\/magento\/framework\/ObjectManager\/Definition\/Runtime.php:54] #2 Magento\\Framework\\ObjectManager\\Definition\\Runtime->getParameters() called at [vendor\/magento\/framework\/ObjectManager\/Factory\/Dynamic\/Developer.php:48] #3 Magento\\Framework\\ObjectManager\\Factory\\Dynamic\\Developer->create() called at [vendor\/magento\/framework\/ObjectManager\/ObjectManager.php:56] #4 Magento\\Framework\\ObjectManager\\ObjectManager->create() called at [vendor\/magento\/framework\/View\/Element\/BlockFactory.php:46] #5 Magento\\Framework\\View\\Element\\BlockFactory->createBlock() called at [vendor\/magento\/framework\/View\/Layout\/Generator\/Block.php:272] #6 Magento\\Framework\\View\\Layout\\Generator\\Block->getBlockInstance() called at [vendor\/magento\/framework\/View\/Layout\/Generator\/Block.php:252] #7 Magento\\Framework\\View\\Layout\\Generator\\Block->createBlock() called at [vendor\/magento\/framework\/View\/Layout\/Generator\/Block.php:229] #8 Magento\\Framework\\View\\Layout\\Generator\\Block->generateBlock() called at [vendor\/magento\/framework\/View\/Layout\/Generator\/Block.php:134] #9 Magento\\Framework\\View\\Layout\\Generator\\Block->process() called at [vendor\/magento\/framework\/View\/Layout\/GeneratorPool.php:93] #10 Magento\\Framework\\View\\Layout\\GeneratorPool->process() called at [vendor\/magento\/framework\/View\/Layout.php:365] #11 Magento\\Framework\\View\\Layout->generateElements() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:58] #12 Magento\\Framework\\View\\Layout\\Interceptor->___callParent() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:138] #13 Magento\\Framework\\View\\Layout\\Interceptor->Magento\\Framework\\Interception{closure}() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:153] #14 Magento\\Framework\\View\\Layout\\Interceptor->___callPlugins() called at [generated\/code\/Magento\/Framework\/View\/Layout\/Interceptor.php:68] #15 Magento\\Framework\\View\\Layout\\Interceptor->generateElements() called at [vendor\/magento\/framework\/View\/Layout\/Builder.php:129] #16 Magento\\Framework\\View\\Layout\\Builder->generateLayoutBlocks() called at [vendor\/magento\/framework\/View\/Page\/Builder.php:65] #17 Magento\\Framework\\View\\Page\\Builder->generateLayoutBlocks() called at [vendor\/magento\/framework\/View\/Layout\/Builder.php:65] #18 Magento\\Framework\\View\\Layout\\Builder->build() called at [vendor\/magento\/framework\/View\/Page\/Config.php:224] #19 Magento\\Framework\\View\\Page\\Config->build() called at [vendor\/magento\/framework\/View\/Page\/Config.php:237] #20 Magento\\Framework\\View\\Page\\Config->publicBuild() called at [vendor\/magento\/framework\/View\/Result\/Page.php:242] #21 Magento\\Framework\\View\\Result\\Page->render() called at [vendor\/magento\/framework\/View\/Result\/Layout.php:171] #22 Magento\\Framework\\View\\Result\\Layout->renderResult() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:58] #23 Magento\\Framework\\View\\Result\\Page\\Interceptor->___callParent() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:138] #24 Magento\\Framework\\View\\Result\\Page\\Interceptor->Magento\\Framework\\Interception{closure}() called at [vendor\/magento\/framework\/Interception\/Interceptor.php:153] #25 Magento\\Framework\\View\\Result\\Page\\Interceptor->___callPlugins() called at [generated\/code\/Magento\/Framework\/View\/Result\/Page\/Interceptor.php:95] #26 Magento\\Framework\\View\\Result\\Page\\Interceptor->renderResult() called at [vendor\/magento\/framework\/App\/Http.php:120] #27 Magento\\Framework\\App\\Http->launch() called at [vendor\/magento\/framework\/App\/Bootstrap.php:263] #28 Magento\\Framework\\App\\Bootstrap->run() called at [pub\/index.php:29] &lt;\/pre><\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u041d\u0443\u0436\u0435\u043d module-cookie&#8230; <\/p>\n<pre><code>taras@taras-home:\/var\/www\/magento-framework-check$ composer require magento\/module-cookie Using version ^100.4 for magento\/module-cookie .\/composer.json has been updated Running composer update magento\/module-cookie Loading composer repositories with package information Updating dependencies Lock file operations: 1 install, 0 updates, 0 removals   - Locking magento\/module-cookie (100.4.2) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 1 install, 0 updates, 0 removals   - Installing magento\/module-cookie (100.4.2): Extracting archive Package container-interop\/container-interop is abandoned, you should avoid using it. Use psr\/container instead. Package laminas\/laminas-console is abandoned, you should avoid using it. Use laminas\/laminas-cli instead. Generating autoload files 45 packages you are using are looking for funding. Use the `composer fund` command to find out more!<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442.<\/p>\n<p>\u0422\u0430\u043a, \u0432\u0441\u0451, \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u043c\u0441\u044f \u043d\u0430 \u0430\u0434\u043c\u0438\u043d\u043a\u0443. \u0412\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435 \u043d\u0443\u0436\u043d\u0430 \u0442\u0435\u043c\u0430:<\/p>\n<pre><code class=\"php\">1 exception(s): Exception #0 (LogicException): Unable to load theme by specified key: 'Magento\/backend'<\/code><\/pre>\n<p>\u0421\u0442\u0430\u0432\u0438\u043c:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ composer require magento\/theme-adminhtml-backend Using version ^100.4 for magento\/theme-adminhtml-backend .\/composer.json has been updated Running composer update magento\/theme-adminhtml-backend Loading composer repositories with package information Updating dependencies Lock file operations: 1 install, 0 updates, 0 removals   - Locking magento\/theme-adminhtml-backend (100.4.2) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 1 install, 0 updates, 0 removals   - Installing magento\/theme-adminhtml-backend (100.4.2): Extracting archive Package container-interop\/container-interop is abandoned, you should avoid using it. Use psr\/container instead. Package laminas\/laminas-console is abandoned, you should avoid using it. Use laminas\/laminas-cli instead. Generating autoload files 45 packages you are using are looking for funding. Use the `composer fund` command to find out more!<\/code><\/pre>\n<p>\u0418 \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u0432\u043e\u0439\u0442\u0438 \u0432 \u0430\u0434\u043c\u0438\u043d\u043a\u0443:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/91f\/ac6\/8e5\/91fac68e5911841a26e4d0345f420af7.png\" width=\"2568\" height=\"1582\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/91f\/ac6\/8e5\/91fac68e5911841a26e4d0345f420af7.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0418 \u043e\u043d\u0430 \u0434\u0430\u0436\u0435 \u0432\u0440\u043e\u0434\u0435 \u0431\u044b \u043d\u0438\u0433\u0434\u0435 \u043d\u0435 \u043f\u0430\u0434\u0430\u0435\u0442. <\/p>\n<p>\u041d\u043e \u043d\u0430 \u044d\u0442\u043e\u043c \u044f \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435 \u043d\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u044e\u0441\u044c. \u0415\u0441\u0442\u044c \u0442\u0430\u043a\u043e\u0439 \u0442\u0440\u044e\u043a &#8212; \u0435\u0441\u043b\u0438 \u0445\u043e\u0447\u0435\u0448\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u043d\u0435 \u043d\u0430\u043b\u0430\u0436\u0430\u043b \u043b\u0438 \u0433\u0434\u0435-\u0442\u043e \u0432 \u043a\u043e\u0434\u0435 &#8212; \u0437\u0430\u043f\u0443\u0441\u0442\u0438 <code>bin\/magento setup:di:compile<\/code>.<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento s:d:c Compilation was started. Application code generator... 3\/9 [=========>------------------]  33% 1 sec 146.0 MiBPHP Fatal error:  Uncaught Error: Interface 'GraphQL\\Error\\ClientAware' not found in \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/GraphQl\/Exception\/GraphQlAuthenticationException.php:17 Stack trace: #0 \/var\/www\/magento-framework-check\/vendor\/composer\/ClassLoader.php(480): include() #1 \/var\/www\/magento-framework-check\/vendor\/composer\/ClassLoader.php(346): Composer\\Autoload\\includeFile() #2 [internal function]: Composer\\Autoload\\ClassLoader->loadClass() #3 [internal function]: spl_autoload_call() #4 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Module\/Di\/Code\/Reader\/ClassesScanner.php(134): class_exists() #5 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Module\/Di\/Code\/Reader\/ClassesScanner.php(117): Magento\\Setup\\Module\\Di\\Code\\Reader\\ClassesScanner->includeClass() #6 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Module\/Di\/Code\/Reader\/ClassesScanner.php(87): Magento\\Setup\\Module\\Di\\Code\\Reader\\ClassesScanner->extract() #7 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Modul in \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/GraphQl\/Exception\/GraphQlAuthenticationException.php on line 17<\/code><\/pre>\n<p>\u0418 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e&#8230; <br \/>\u0420\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f, \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u043f\u0430\u043a\u0435\u0442:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ composer require webonyx\/graphql-php Using version ^14.9 for webonyx\/graphql-php .\/composer.json has been updated Running composer update webonyx\/graphql-php Loading composer repositories with package information Updating dependencies Lock file operations: 1 install, 0 updates, 0 removals   - Locking webonyx\/graphql-php (v14.9.0) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 1 install, 0 updates, 0 removals   - Downloading webonyx\/graphql-php (v14.9.0)   - Installing webonyx\/graphql-php (v14.9.0): Extracting archive 1 package suggestions were added by new dependencies, use `composer suggest` to see details. Package container-interop\/container-interop is abandoned, you should avoid using it. Use psr\/container instead. Package laminas\/laminas-console is abandoned, you should avoid using it. Use laminas\/laminas-cli instead. Generating autoload files 46 packages you are using are looking for funding. Use the `composer fund` command to find out more! <\/code><\/pre>\n<p>\u0418 \u0441\u043d\u043e\u0432\u0430:<\/p>\n<pre><code>taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento s:d:c Compilation was started. Application code generator... 3\/9 [=========>------------------]  33% 1 sec 150.0 MiBPHP Fatal error:  Uncaught Error: Class 'Cm_Cache_Backend_Redis' not found in \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/Cache\/Backend\/Redis.php:12 Stack trace: #0 \/var\/www\/magento-framework-check\/vendor\/composer\/ClassLoader.php(480): include() #1 \/var\/www\/magento-framework-check\/vendor\/composer\/ClassLoader.php(346): Composer\\Autoload\\includeFile() #2 [internal function]: Composer\\Autoload\\ClassLoader->loadClass() #3 [internal function]: spl_autoload_call() #4 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Module\/Di\/Code\/Reader\/ClassesScanner.php(134): class_exists() #5 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Module\/Di\/Code\/Reader\/ClassesScanner.php(117): Magento\\Setup\\Module\\Di\\Code\\Reader\\ClassesScanner->includeClass() #6 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Module\/Di\/Code\/Reader\/ClassesScanner.php(87): Magento\\Setup\\Module\\Di\\Code\\Reader\\ClassesScanner->extract() #7 \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Module\/Di\/App\/Task\/Operation\/ApplicationC in \/var\/www\/magento-framework-check\/vendor\/magento\/framework\/Cache\/Backend\/Redis.php on line 12<\/code><\/pre>\n<p>\u0421\u0442\u0430\u0432\u0438\u043c \u0438 \u0441\u0440\u0430\u0437\u0443 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c:<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ composer require colinmollenhour\/cache-backend-redis Using version ^1.14 for colinmollenhour\/cache-backend-redis .\/composer.json has been updated Running composer update colinmollenhour\/cache-backend-redis Loading composer repositories with package information Updating dependencies Lock file operations: 1 install, 0 updates, 0 removals   - Locking colinmollenhour\/cache-backend-redis (1.14.2) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 1 install, 0 updates, 0 removals   - Installing colinmollenhour\/cache-backend-redis (1.14.2): Extracting archive Package container-interop\/container-interop is abandoned, you should avoid using it. Use psr\/container instead. Package laminas\/laminas-console is abandoned, you should avoid using it. Use laminas\/laminas-cli instead. Generating autoload files 46 packages you are using are looking for funding. Use the `composer fund` command to find out more! taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento s:d:c Compilation was started. Application code generator... 3\/9 [=========>------------------]  33% 1 sec 148.0 MiB In ErrorHandler.php line 61:                                                                                                                                                                                                                        Warning: Use of undefined constant MCRYPT_BLOWFISH - assumed 'MCRYPT_BLOWFISH' (this will throw an Error in a future version of PHP) in \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Module\/Di\/Code\/     Scanner\/PhpScanner.php on line 65                                                                                                                                                                                                                                                                                                                                                                                                        setup:di:compile <\/code><\/pre>\n<p>\u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e, \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442 \u0442\u0443\u0442 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0430 \u0438\u0437 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f mcrypt, \u0435\u0441\u043b\u0438 \u043e\u0442 \u043d\u0435\u0433\u043e \u0432\u0440\u043e\u0434\u0435 \u0431\u044b \u0434\u0430\u0432\u043d\u043e \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c? \u041d\u0443, \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0442\u044c, \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0438 \u0438\u0434\u0435\u043c \u0434\u0430\u043b\u044c\u0448\u0435<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento s:d:c Compilation was started. Area configuration aggregation... 5\/9 [===============>------------]  55% 5 secs 194.0 MiB In ClassReader.php line 45:                                                                                                                                                                                                                        Impossible to process constructor argument Parameter #0 [ &lt;required> Magento\\AdminNotification\\Model\\System\\MessageFactory $messageFactory ] of Magento\\AsynchronousOperations\\Model\\ResourceModel\\System\\Messag     e\\Collection\\Synchronized\\Plugin class                                                                                                                                                                                                                                                                                                                                                                                                   In ClassReader.php line 34:                                                                                  Class Magento\\AdminNotification\\Model\\System\\MessageFactory does not exist                                                                                   setup:di:compile<\/code><\/pre>\n<p>\u041e\u0447\u0435\u0440\u0435\u0434\u043d\u0430\u044f \u043d\u0435\u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u043d\u0430\u044f \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c, \u0438 \u043e\u043f\u044f\u0442\u044c, \u043f\u043e\u0445\u043e\u0436\u0435, \u043d\u0435 \u0432 \u0442\u043e\u043c \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438. \u0415\u0441\u043b\u0438 \u043c\u043e\u0434\u0443\u043b\u044c \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439, \u043f\u043e\u0447\u0435\u043c\u0443 \u043e\u043d \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043a\u0430\u043a\u0438\u0445-\u0442\u043e \u0434\u0435\u0442\u0430\u043b\u0435\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 Magento\\AdminNotification? \u0421\u0442\u0430\u0432\u0438\u043c&#8230;<\/p>\n<pre><code>taras@taras-home:\/var\/www\/magento-framework-check$ composer require magento\/module-admin-notification Using version ^100.4 for magento\/module-admin-notification .\/composer.json has been updated Running composer update magento\/module-admin-notification Loading composer repositories with package information Updating dependencies Lock file operations: 1 install, 0 updates, 0 removals   - Locking magento\/module-admin-notification (100.4.1) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 1 install, 0 updates, 0 removals   - Installing magento\/module-admin-notification (100.4.1): Extracting archive Package container-interop\/container-interop is abandoned, you should avoid using it. Use psr\/container instead.  taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento s:d:c Compilation was started. Interception cache generation... 6\/9 [==================>---------]  66% 5 secs 258.0 MiBErrors during configuration scanning:         Magento\\WebapiAsync\\Model\\Config\\Proxy                 Invalid proxy class for Magento\\WebapiAsync\\Model\\Config&lt;\/error>         Magento\\ConfigurableProduct\\Helper\\Product\\Options\\Factory                 Invalid Factory for nonexistent class Magento\\ConfigurableProduct\\Helper\\Product\\Options in file \/var\/www\/magento-framework-check\/setup\/src\/Magento\/Setup\/Model\/FixtureGenerator\/ConfigurableProductTemplateGenerator.php Total Errors Count: 2  In Log.php line 92:                                Error during compilation                                 setup:di:compile <\/code><\/pre>\n<p>\u0418 \u0441\u043d\u043e\u0432\u0430 \u0443 \u043d\u0430\u0441 \u0432 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0449\u0438\u043a\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0442 \u043c\u043e\u0434\u0443\u043b\u044f Magento_ConfigurableProduct, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u043c \u043d\u0435 \u043d\u0443\u0436\u0435\u043d (\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u044d\u0442\u0438\u0445 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u043c\u043e\u0436\u043d\u043e \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c, \u043d\u043e \u044f \u043d\u0435 \u0437\u043d\u0430\u044e, \u043a\u0430\u043a?)<\/p>\n<p>\u0421\u0442\u0430\u0432\u0438\u043c \u0438 \u0435\u0433\u043e<\/p>\n<pre><code>taras@taras-home:\/var\/www\/magento-framework-check$ composer require magento\/module-configurable-product Using version ^100.4 for magento\/module-configurable-product .\/composer.json has been updated Running composer update magento\/module-configurable-product Loading composer repositories with package information Updating dependencies Lock file operations: 1 install, 0 updates, 0 removals   - Locking magento\/module-configurable-product (100.4.2) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 1 install, 0 updates, 0 removals   - Installing magento\/module-configurable-product (100.4.2): Extracting archive 4 package suggestions were added by new dependencies, use `composer suggest` to see details. Package container-interop\/container-interop is abandoned, you should avoid using it. Use psr\/container instead. Package laminas\/laminas-console is abandoned, you should avoid using it. Use laminas\/laminas-cli instead. Generating autoload files 46 packages you are using are looking for funding. Use the `composer fund` command to find out more! taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento s:d:c Compilation was started. Interception cache generation... 6\/9 [==================>---------]  66% 5 secs 260.0 MiBErrors during configuration scanning:         Magento\\WebapiAsync\\Model\\Config\\Proxy                 Invalid proxy class for Magento\\WebapiAsync\\Model\\Config&lt;\/error> Total Errors Count: 1  In Log.php line 92:                                Error during compilation                                 setup:di:compile<\/code><\/pre>\n<p>\u0410 \u0432\u043e\u0442 \u044d\u0442\u043e \u0442\u0430\u043a \u0436\u0435 \u0438\u0437 app\/etc\/di.xml:231:<\/p>\n<pre><code class=\"xml\">&lt;preference for=\"Magento\\AsynchronousOperations\\Model\\ConfigInterface\" type=\"Magento\\WebapiAsync\\Model\\Config\\Proxy\" \/><\/code><\/pre>\n<p>\u0421\u0442\u0430\u0432\u0438\u043c<\/p>\n<pre><code class=\"bash\">taras@taras-home:\/var\/www\/magento-framework-check$ composer require magento\/module-webapi-async Using version ^100.4 for magento\/module-webapi-async .\/composer.json has been updated Running composer update magento\/module-webapi-async Loading composer repositories with package information Updating dependencies Lock file operations: 2 installs, 0 updates, 0 removals   - Locking magento\/module-webapi (100.4.1)   - Locking magento\/module-webapi-async (100.4.0) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 2 installs, 0 updates, 0 removals   - Installing magento\/module-webapi (100.4.1): Extracting archive   - Installing magento\/module-webapi-async (100.4.0): Extracting archive Package container-interop\/container-interop is abandoned, you should avoid using it. Use psr\/container instead. Package laminas\/laminas-console is abandoned, you should avoid using it. Use laminas\/laminas-cli instead. Generating autoload files 46 packages you are using are looking for funding. Use the `composer fund` command to find out more! taras@taras-home:\/var\/www\/magento-framework-check$ bin\/magento s:d:c Compilation was started. Plugin list generation... 9\/9 [============================] 100% 6 secs 262.0 MiB Generated code and dependency injection configuration successfully.<\/code><\/pre>\n<p>\u0422\u0430\u043a-\u0442\u0430\u043a. \u041c\u043d\u0435 \u043d\u0435 \u0441\u043d\u0438\u0442\u0441\u044f? \u041f\u043e\u0445\u043e\u0436\u0435, \u044d\u0442\u043e \u0432\u0441\u0451. \u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e, \u0430 \u0442\u043e \u044f \u0443\u0436\u0435 \u0445\u043e\u0442\u0435\u043b \u043e\u0431\u044a\u044f\u0432\u0438\u0442\u044c, \u0447\u0442\u043e \u0432\u0441\u0451 \u0441\u043e\u0432\u0441\u0435\u043c \u043f\u043b\u043e\u0445\u043e \u0438 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0435 \u043a\u043e\u043f\u0430\u043d\u0438\u0435.<\/p>\n<p>\u0412 \u043e\u0431\u0449\u0435\u043c, \u043c\u043e\u0440\u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0430\u0434\u043c\u0438\u043d\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u041f\u043e\u0440\u0430 \u0434\u0435\u043b\u0430\u0442\u044c \u0432\u044b\u0432\u043e\u0434\u044b.<\/p>\n<h2>\u0418\u0442\u043e\u0433<\/h2>\n<p>\u041d\u0430\u0447\u043d\u0435\u043c \u0441\u043d\u0438\u0437\u0443. \u041a\u0430\u043a\u0438\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f PHP \u043d\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u043e\u0441\u044c \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u0432\u0435\u0440\u0445 \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u0445 Magento 2? \u0414\u043b\u044f Composer &#8212; 3: phar, dom, json.\u042d\u0442\u043e \u043b\u043e\u0433\u0438\u0447\u043d\u043e, \u0432\u0435\u0434\u044c \u0435\u0441\u043b\u0438 Magento \u0442\u0440\u0435\u0431\u0443\u0435\u0442 Composer, \u0432\u0441\u0435 \u0435\u0433\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b &#8212; \u043e\u043a\u0435\u0439. \u041d\u043e \u0435\u0441\u0442\u044c \u0435\u0449\u0435 \u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0441\u0430\u043c\u0430 Magento, \u043d\u043e \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u043f\u043e\u0447\u0435\u043c\u0443-\u0442\u043e \u0437\u0430\u0431\u044b\u0442\u044b \u0432 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u0445. \u0418\u0445 5:<\/p>\n<p>pdo (\u0432\u043f\u0440\u043e\u0447\u0435\u043c, \u043b\u043e\u0433\u0438\u0447\u043d\u043e, \u0447\u0442\u043e pdo_mysql \u0431\u0435\u0437 \u043d\u0435\u0433\u043e \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442)<br \/>mysqlnd<br \/>tokenizer<br \/>mcrypt<br \/>fileinfo (\u0441\u043a\u043e\u0440\u0435\u0435 \u0442\u0443\u0442 \u0438\u043c\u0435\u0435\u043c \u0431\u0430\u0433, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043b\u0435\u0447\u0438\u0442\u0441\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f)<\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u0443 \u043d\u0430\u0441 \u043f\u043e \u043f\u0430\u043a\u0435\u0442\u0430\u043c composer. \u0412\u043e\u0442 \u043c\u043e\u0434\u0443\u043b\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043f\u043e \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u0440\u0443\u0447\u043d\u0443\u044e (magento2-base \u0431\u044b\u043b \u043e\u0442\u043f\u0440\u0430\u0432\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u043e\u0439), \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c Magento 2 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c:<\/p>\n<pre><code class=\"json\">\"require\": {   \"colinmollenhour\/cache-backend-file\": \"^1.4\",   \"colinmollenhour\/cache-backend-redis\": \"^1.14\",   \"magento\/framework\": \"^103.0\",   \"magento\/magento2-base\": \"^2.4\",   \"magento\/module-admin-notification\": \"^100.4\",   \"magento\/module-configurable-product\": \"^100.4\",   \"magento\/module-cookie\": \"^100.4\",   \"magento\/module-search\": \"^101.1\",   \"magento\/module-store\": \"^101.1\",   \"magento\/module-webapi-async\": \"^100.4\",   \"magento\/theme-adminhtml-backend\": \"^100.4\",   \"magento\/theme-frontend-luma\": \"^100.4\",   \"webonyx\/graphql-php\": \"^14.9\" }<\/code><\/pre>\n<p>\u041c\u043d\u043e\u0433\u0438\u0435 \u0438\u0437 \u043d\u0438\u0445 &#8212; \u044f\u0432\u043d\u043e \u0437\u0430\u0431\u044b\u0442\u044b\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438. \u041e \u043f\u0440\u0438\u0447\u0438\u043d\u0430\u0445 \u044d\u0442\u043e\u0433\u043e \u043c\u043d\u0435 \u0441\u0443\u0434\u0438\u0442\u044c \u0441\u043b\u043e\u0436\u043d\u043e. \u0415\u0441\u043b\u0438 \u043c\u043e\u0434\u0443\u043b\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u0435\u0437 \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f, \u043a\u0430\u043a\u043e\u0439 \u0441\u043c\u044b\u0441\u043b \u043d\u0435 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0435\u0433\u043e \u0432 composer.json \u0438 module.xml? \u0415\u0441\u043b\u0438 \u0443 \u043a\u043e\u0433\u043e-\u0442\u043e \u0435\u0441\u0442\u044c \u0434\u043e\u0433\u0430\u0434\u043a\u0438 &#8212; \u043f\u0438\u0448\u0438\u0442\u0435.<\/p>\n<p>\u0412\u043e\u0442 \u0441\u043f\u0438\u0441\u043e\u043a 72 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 Magento, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u043f\u043e \u0438\u0442\u043e\u0433\u0443:<\/p>\n<details class=\"spoiler\">\n<summary>\u0441\u043f\u0438\u0441\u043e\u043a<\/summary>\n<div class=\"spoiler__content\">\n<pre><code>composer framework framework-bulk framework-message-queue magento-composer-installer magento2-base module-admin-notification module-asynchronous-operations module-authorization module-backend module-backup module-bundle module-captcha module-catalog module-catalog-import-export module-catalog-inventory module-catalog-rule module-catalog-search module-catalog-url-rewrite module-checkout module-cms module-cms-url-rewrite module-config module-configurable-product module-contact module-cookie module-cron module-customer module-deploy module-developer module-directory module-downloadable module-eav module-email module-gift-message module-import-export module-indexer module-integration module-media-storage module-msrp module-newsletter module-page-cache module-payment module-product-alert module-quote module-reports module-require-js module-review module-rss module-rule module-sales module-sales-rule module-sales-sequence module-search module-security module-shipping module-store module-tax module-theme module-translation module-ui module-url-rewrite module-user module-variable module-webapi module-webapi-async module-widget module-wishlist theme-adminhtml-backend theme-frontend-blank theme-frontend-luma zendframework1<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u0412\u0435\u0441\u044c\u043c\u0430 \u0432\u043d\u0443\u0448\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e, \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u044f, \u0447\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0438\u0437 \u043d\u0438\u0445 \u043c\u043e\u0436\u0435\u0442 \u043c\u043d\u0435 \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f. \u041d\u043e \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u043e\u043d\u0438 \u043d\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u044e\u0442\u0441\u044f \u0434\u0430\u0436\u0435 \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443:<\/p>\n<details class=\"spoiler\">\n<summary>\u043f\u0440\u0438\u043c\u0435\u0440<\/summary>\n<div class=\"spoiler__content\">\n<pre><code>$ bin\/magento module:disable Magento_Wishlist Unable to change status of modules because of the following constraints: Cannot disable Magento_Wishlist because modules depend on it: Magento_Store: Magento_Store->Magento_Customer->Magento_Wishlist Magento_Directory: Magento_Directory->Magento_Store->Magento_Customer->Magento_Wishlist Magento_Theme: Magento_Theme->Magento_Customer->Magento_Wishlist Magento_Config: Magento_Config->Magento_Store->Magento_Customer->Magento_Wishlist Magento_Backup: Magento_Backup->Magento_Store->Magento_Customer->Magento_Wishlist Magento_Variable: Magento_Variable->Magento_Store->Magento_Customer->Magento_Wishlist Magento_Eav: Magento_Eav->Magento_Catalog->Magento_Wishlist Magento_Customer: Magento_Customer->Magento_Wishlist Magento_CatalogImportExport: Magento_CatalogImportExport->Magento_Customer->Magento_Wishlist Magento_AdminNotification: Magento_AdminNotification->Magento_Store->Magento_Customer->Magento_Wishlist Magento_Indexer: Magento_Indexer->Magento_Backend->Magento_Customer->Magento_Wishlist Magento_Cms: Magento_Cms->Magento_Catalog->Magento_Wishlist Magento_Catalog: Magento_Catalog->Magento_Wishlist Magento_Payment: Magento_Payment->Magento_Sales->Magento_Wishlist Magento_Quote: Magento_Quote->Magento_Customer->Magento_Wishlist Magento_CmsUrlRewrite: Magento_CmsUrlRewrite->Magento_Store->Magento_Customer->Magento_Wishlist Magento_Backend: Magento_Backend->Magento_Customer->Magento_Wishlist Magento_Msrp: Magento_Msrp->Magento_Catalog->Magento_Wishlist Magento_Contact: Magento_Contact->Magento_Customer->Magento_Wishlist Magento_Cookie: Magento_Cookie->Magento_Store->Magento_Customer->Magento_Wishlist Magento_Cron: Magento_Cron->Magento_Store->Magento_Customer->Magento_Wishlist Magento_Bundle: Magento_Bundle->Magento_Customer->Magento_Wishlist Magento_Deploy: Magento_Deploy->Magento_Store->Magento_Customer->Magento_Wishlist Magento_Developer: Magento_Developer->Magento_Store->Magento_Customer->Magento_Wishlist Magento_Authorization: Magento_Authorization->Magento_Backend->Magento_Customer->Magento_Wishlist Magento_Downloadable: Magento_Downloadable->Magento_Customer->Magento_Wishlist Magento_Rule: Magento_Rule->Magento_Catalog->Magento_Wishlist Magento_Email: Magento_Email->Magento_Store->Magento_Customer->Magento_Wishlist Magento_ImportExport: Magento_ImportExport->Magento_Catalog->Magento_Wishlist Magento_CatalogRule: Magento_CatalogRule->Magento_Customer->Magento_Wishlist Magento_Security: Magento_Security->Magento_Store->Magento_Customer->Magento_Wishlist Magento_MediaStorage: Magento_MediaStorage->Magento_Catalog->Magento_Wishlist Magento_Sales: Magento_Sales->Magento_Wishlist Magento_Widget: Magento_Widget->Magento_Catalog->Magento_Wishlist Magento_PageCache: Magento_PageCache->Magento_Store->Magento_Customer->Magento_Wishlist Magento_CatalogInventory: Magento_CatalogInventory->Magento_Customer->Magento_Wishlist Magento_ProductAlert: Magento_ProductAlert->Magento_Customer->Magento_Wishlist Magento_Checkout: Magento_Checkout->Magento_Customer->Magento_Wishlist Magento_Reports: Magento_Reports->Magento_Wishlist Magento_Review: Magento_Review->Magento_Customer->Magento_Wishlist Magento_Rss: Magento_Rss->Magento_Customer->Magento_Wishlist Magento_Search: Magento_Search->Magento_Reports->Magento_Wishlist Magento_GiftMessage: Magento_GiftMessage->Magento_Customer->Magento_Wishlist Magento_SalesRule: Magento_SalesRule->Magento_Customer->Magento_Wishlist Magento_Captcha: Magento_Captcha->Magento_Customer->Magento_Wishlist Magento_CatalogSearch: Magento_CatalogSearch->Magento_Customer->Magento_Wishlist Magento_User: Magento_User->Magento_Store->Magento_Customer->Magento_Wishlist Magento_Ui: Magento_Ui->Magento_Store->Magento_Customer->Magento_Wishlist Magento_ConfigurableProduct: Magento_ConfigurableProduct->Magento_Customer->Magento_Wishlist Magento_Tax: Magento_Tax->Magento_Customer->Magento_Wishlist Magento_AsynchronousOperations: Magento_AsynchronousOperations->Magento_Backend->Magento_Customer->Magento_Wishlist Magento_Translation: Magento_Translation->Magento_Store->Magento_Customer->Magento_Wishlist Magento_Shipping: Magento_Shipping->Magento_Customer->Magento_Wishlist Magento_UrlRewrite: Magento_UrlRewrite->Magento_Catalog->Magento_Wishlist Magento_Integration: Magento_Integration->Magento_Customer->Magento_Wishlist Magento_CatalogUrlRewrite: Magento_CatalogUrlRewrite->Magento_Catalog->Magento_Wishlist Magento_Webapi: Magento_Webapi->Magento_Store->Magento_Customer->Magento_Wishlist Magento_WebapiAsync: Magento_WebapiAsync->Magento_Webapi->Magento_Store->Magento_Customer->Magento_Wishlist Magento_Newsletter: Magento_Newsletter->Magento_Customer->Magento_Wishlist<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u0412\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0441\u0442\u0440\u0430\u0448\u043d\u043e. \u041f\u043e\u0447\u0435\u043c\u0443 \u0441\u0442\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u043e\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439  \u043f\u043e \u043b\u043e\u0433\u0438\u043a\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u044b\u043c?<\/p>\n<p>\u0418 \u043c\u0435\u043d\u044f \u0442\u0435\u0440\u0437\u0430\u044e\u0442 \u0441\u043c\u0443\u0442\u043d\u044b\u0435 \u0441\u043e\u043c\u043d\u0435\u043d\u0438\u044f \u043d\u0430\u0441\u0447\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u044d\u0442\u043e \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c. \u0414\u0443\u043c\u0430\u044e, \u044d\u0442\u043e \u0443\u0436\u0435 \u043d\u0435 \u0438\u0441\u043f\u0440\u0430\u0432\u044f\u0442 (\u043f\u043e \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0443 &#171;\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 &#8212; \u043d\u0435 \u0442\u0440\u043e\u0433\u0430\u0439&#187;).<\/p>\n<p>\u0412 \u043e\u0431\u0449\u0435\u043c, \u0432\u044b\u0432\u043e\u0434\u044b \u0432\u0435\u0441\u044c\u043c\u0430 \u043f\u0435\u0447\u0430\u043b\u044c\u043d\u044b &#8212; \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 legacy \u043a\u043e\u0434\u0430 \u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0434\u0435\u043b\u0430\u044e\u0442 Magento 2 \u043e\u0447\u0435\u043d\u044c \u043d\u0435\u043f\u043e\u0432\u043e\u0440\u043e\u0442\u043b\u0438\u0432\u043e\u0439 \u0438 \u0442\u044f\u0436\u0435\u043b\u043e\u0432\u0435\u0441\u043d\u043e\u0439, \u0431\u0435\u0437 \u043a\u0430\u043a\u043e\u0439-\u043b\u0438\u0431\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043e\u0431\u043b\u0435\u0433\u0447\u0435\u043d\u0438\u044f. \u041c\u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0430, \u043d\u043e \u0432\u0435\u0447\u043d\u043e \u0442\u044f\u043d\u0443\u0442\u044c \u043c\u0435\u0440\u0442\u0432\u044b\u043c \u0433\u0440\u0443\u0437\u043e\u043c \u043f\u043e\u043b\u0441\u043e\u0442\u043d\u0438 \u043d\u0435\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 &#8212; \u044d\u0442\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u0435\u0437\u0443\u043c\u0438\u0435. <\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/571632\/\"> https:\/\/habr.com\/ru\/articles\/571632\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u041f\u0440\u0438\u0432\u0435\u0442. \u042f \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c back-end \/ full-stack \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u043d\u0430 Magento 2 \u0443\u0436\u0435 3.5 \u0433\u043e\u0434\u0430. \u0412\u0441\u0435 \u044d\u0442\u0438 \u0433\u043e\u0434\u044b \u0443 \u043c\u0435\u043d\u044f \u043d\u0438\u043a\u0430\u043a \u043d\u0435 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u0441\u0438\u043b \u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043f\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u044c \u043e\u0434\u0438\u043d \u0441\u0432\u043e\u0439 \u0441\u0442\u0430\u0440\u044b\u0439 (\u043d\u043e \u0432\u0441\u0451 \u0435\u0449\u0435 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0439) \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 \u0443\u0431\u043e\u0433\u043e\u0433\u043e Web-CMS uWeb \u043d\u0430 \u0447\u0442\u043e-\u0442\u043e \u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u0442\u043e\u043b\u043a\u043e\u0432\u043e\u0435, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u043e\u0435 \u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u0435\u043c\u043e\u0435. \u0418\u0434\u0435\u0439 \u0431\u044b\u043b\u043e \u043c\u043d\u043e\u0433\u043e &#8212; \u043f\u0438\u0441\u0430\u0442\u044c \u0441 \u043d\u0443\u043b\u044f \u043d\u0430 Symfony, \u0438\u0437\u0443\u0447\u0430\u0442\u044c Drupal \u0438 \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0430 \u043d\u0435\u043c, \u043f\u0440\u0438\u0432\u043b\u0435\u043a\u0430\u0442\u044c React JS&#8230; \u041d\u043e \u0432\u0441\u0451 \u044d\u0442\u043e \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u0442\u0440\u0430\u0442 \u0438 \u043e\u0442 \u044d\u0442\u0438\u0445 \u0438\u0434\u0435\u0439 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u043b\u043e\u0441\u044c \u043e\u0442\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c\u0441\u044f.<\/p>\n<p>\u0418 \u0432\u043e\u0442 \u043d\u0435\u0434\u0430\u0432\u043d\u043e \u043c\u043d\u0435 \u0432 \u0433\u043e\u043b\u043e\u0432\u0443 \u043f\u0440\u0438\u0448\u043b\u0430 \u0434\u0440\u0443\u0433\u0430\u044f (\u0441\u043e\u0432\u0441\u0435\u043c \u0443\u0436 \u0431\u0435\u0437\u0443\u043c\u043d\u0430\u044f?) \u0438\u0434\u0435\u044f: \u0430 \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Magento 2 \u043a\u0430\u043a \u043a\u0430\u0440\u043a\u0430\u0441 \u0434\u043b\u044f \u043c\u043e\u0435\u0433\u043e \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u043f\u0443\u0441\u0442\u044c \u043e\u043d \u0434\u0430\u0436\u0435 \u0438 \u043d\u0435 E-commerce? \u0422\u0443\u0442 \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u043d\u0430 \u0443\u043c \u043f\u0440\u0438\u0445\u043e\u0434\u044f\u0442 \u0432\u043f\u043e\u043b\u043d\u0435 \u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0435 \u0432\u043e\u0437\u0440\u0430\u0436\u0435\u043d\u0438\u044f &#8212; \u0432\u0440\u043e\u0434\u0435 \u0441\u043e\u043c\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 E-commerce CMS \u0434\u043b\u044f \u043d\u0435-\u043c\u0430\u0433\u0430\u0437\u0438\u043d\u043e\u0432, \u0441\u0442\u0440\u0435\u043b\u044c\u0431\u044b \u0438\u0437 \u043f\u0443\u0448\u043a\u0438 \u043f\u043e \u0432\u043e\u0440\u043e\u0431\u044c\u044f\u043c (\u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0435 \u043e\u0441\u043e\u0431\u043e \u0431\u043e\u043b\u044c\u0448\u043e\u0439), \u043d\u0438\u0437\u043a\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438\/\u0432\u044b\u0441\u043e\u043a\u0438\u0445 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0439 \u043a \u0436\u0435\u043b\u0435\u0437\u0443 \u0438 \u0442. \u0434. \u041d\u043e \u0438 \u0442\u0435\u043e\u0440\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043b\u044e\u0441\u044b \u044f \u0434\u043b\u044f \u0441\u0435\u0431\u044f \u0432 \u0442\u0430\u043a\u043e\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0432\u0438\u0436\u0443:<\/p>\n<ul>\n<li>\n<p>\u043d\u0435 \u043d\u0430\u0434\u043e \u0442\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f \u043d\u0430 \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u0441\u0442\u0435\u043a\u0430 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439 \u0438\u043b\u0438 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430;<\/p>\n<\/li>\n<li>\n<p>\u043c\u043e\u0434\u0443\u043b\u044c\u043d\u043e\u0441\u0442\u044c, \u0433\u0440\u0430\u043c\u043e\u0442\u043d\u043e \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u0430\u044f \u044d\u043a\u043e-\u0441\u0438\u0441\u0442\u0435\u043c\u0430, \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0445 best practices;<\/p>\n<\/li>\n<li>\n<p>\u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043c\u043c\u044c\u044e\u043d\u0438\u0442\u0438 \u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u043e\u0442\u0432\u0435\u0442\u043e\u0432 \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043b\u044e\u0431\u044b\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435.<\/p>\n<\/li>\n<\/ul>\n<p>\u041d\u0443 \u0438 \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043c\u043d\u0435 \u0432 \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u0441\u0442\u0435\u043f\u0435\u043d\u0438 \u0434\u0430\u0436\u0435 \u0441\u0442\u0430\u043b\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e, \u043d\u0430 \u0447\u0442\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u0430 Magento, \u0438 \u043c\u043e\u0436\u043d\u043e \u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0435\u0451 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0435\u0451 \u0431\u043e\u043b\u044c\u0448\u0435 \u043a\u0430\u043a \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a, \u0430 \u043d\u0435 \u043a\u0430\u043a CMS (\u043d\u043e \u0438 \u0432 \u044d\u0442\u043e\u043c \u043f\u043b\u0430\u043d\u0435 \u0442\u043e\u0436\u0435 &#8212; \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u043e\u0434\u0443\u043b\u044c \u0430\u0434\u043c\u0438\u043d\u043a\u0438).<\/p>\n<p>\u041f\u043e\u043c\u043d\u044e, \u043d\u0430 \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0439 \u043f\u043e Magento \u0431\u044b\u043b \u0434\u043e\u043a\u043b\u0430\u0434, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u043b \u043e \u0441\u0432\u043e\u0451\u043c \u043e\u043f\u044b\u0442\u0435 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043e\u0431\u043b\u0435\u0433\u0447\u0435\u043d\u0438\u044f Magento 2 \u043f\u0443\u0442\u0435\u043c \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0433\u043e, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c. \u042f \u0436\u0435 \u043f\u043e\u0448\u0435\u043b \u0434\u0440\u0443\u0433\u0438\u043c \u043f\u0443\u0442\u0451\u043c: \u043c\u043e\u044f \u0438\u0434\u0435\u044f &#8212; \u043f\u043e\u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u0442\u043e, \u0432 \u0447\u0435\u043c \u043d\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u0430\u0439\u0442\u0430. \u041a\u0440\u0438\u0442\u0435\u0440\u0438\u0435\u043c \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u044f \u0432\u0437\u044f\u043b \u0443\u0441\u043f\u0435\u0448\u043d\u0443\u044e \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 frontend \u0438 backend \u043e\u0431\u043b\u0430\u0441\u0442\u0435\u0439 \u0441\u0430\u0439\u0442\u0430. <\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043e \u0441\u0432\u043e\u0451\u043c \u043e\u043f\u044b\u0442\u0435 \u0440\u0443\u0447\u043d\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 Magento 2 \u0438 \u043f\u043e\u043f\u044b\u0442\u043a\u0430\u0445 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438.<\/p>\n<h2>\u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435<\/h2>\n<p>\u0418\u043c\u0435\u0435\u043c Ubuntu 20.04, nginx 1.18.0, PHP-FPM 7.4.22, MariaDB 10.3.30, Composer 2.1.5<\/p>\n<p>\u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0435 \u0443 \u043c\u0435\u043d\u044f \u0431\u044b\u043b\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f Magento CE 2.4.2-p1, \u0447\u0442\u043e\u0431\u044b \u0432\u0438\u0434\u0435\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0432 composer.json. \u0420\u0430\u0437\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u043d\u0430 \u043e\u0447\u0435\u043d\u044c \u043b\u0435\u0433\u043a\u043e:<\/p>\n<pre><code class=\"bash\">composer create-project --repository-url=https:\/\/repo.magento.com\/ magento\/project-community-edition &lt;install-directory-name> <\/code><\/pre>\n<p>\u0414\u0430\u043b\u0435\u0435, \u0447\u0442\u043e\u0431 \u0431\u044b\u043b\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0435\u0435, \u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u043b \u0432\u0441\u0435 \u043b\u0438\u0448\u043d\u0438\u0435 \u043c\u043e\u0434\u0443\u043b\u0438 PHP, \u043e\u0441\u0442\u0430\u0432\u0438\u0432 \u0442\u043e\u043b\u044c\u043a\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0432 <a href=\"https:\/\/devdocs.magento.com\/guides\/v2.4\/install-gde\/system-requirements.html\" rel=\"noopener noreferrer nofollow\">System Requirements<\/a> :<\/p>\n<ul>\n<li>\n<p>ext-bcmath<\/p>\n<\/li>\n<li>\n<p>ext-ctype<\/p>\n<\/li>\n<li>\n<p>ext-curl<\/p>\n<\/li>\n<li>\n<p>ext-dom<\/p>\n<\/li>\n<li>\n<p>ext-gd<\/p>\n<\/li>\n<li>\n<p>ext-hash<\/p>\n<\/li>\n<li>\n<p>ext-iconv<\/p>\n<\/li>\n<li>\n<p>ext-intl<\/p>\n<\/li>\n<li>\n<p>ext-mbstring<\/p>\n<\/li>\n<li>\n<p>ext-openssl<\/p>\n<\/li>\n<li>\n<p>ext-pdo_mysql<\/p>\n<\/li>\n<li>\n<p>ext-simplexml<\/p>\n<\/li>\n<li>\n<p>ext-soap<\/p>\n<\/li>\n<li>\n<p>ext-xsl<\/p>\n<\/li>\n<li>\n<p>ext-zip<\/p>\n<\/li>\n<li>\n<p>ext-sockets<\/p>\n<\/li>\n<\/ul>\n<p>\u041c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0430\u0441\u0430\u0442\u044c\u0441\u044f \u043f\u043e\u043f\u043a\u043e\u0440\u043d\u043e\u043c&#8230;<\/p>\n<h2>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432<\/h2>\n<p>\u0418\u0442\u0430\u043a, \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u043f\u0440\u043e\u0435\u043a\u0442 \/var\/www\/magento-framework-check, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0432\u043d\u0443\u0442\u0440\u0438 <code>composer init<\/code> \u0438, \u0432\u043f\u043e\u043b\u043d\u0435 \u043b\u043e\u0433\u0438\u0447\u043d\u043e, \u043f\u043e\u043b\u0443\u0447\u0430\u044e \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c &#8212; phar, \u0430 \u0442\u0430\u043a\u0436\u0435, \u043f\u043e\u0445\u043e\u0436\u0435, \u043e\u0448\u0438\u0431\u043a\u0443 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u0443\u044e \u0441 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435\u043c \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f dom:<\/p>\n<p><code>PHP Warning:  PHP Startup: Unable to load dynamic library 'xsl.so' (tried: \/usr\/lib\/php\/20190902\/xsl.so (\/usr\/lib\/php\/20190902\/xsl.so: undefined symbol: dom_node_class_entry), \/usr\/lib\/php\/20190902\/xsl.so.so (\/usr\/lib\/php\/20190902\/xsl.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 PHP Fatal error:  Uncaught Error: Class 'Phar' not found in \/usr\/local\/bin\/composer:23 Stack trace: #0 {main}   thrown in \/usr\/local\/bin\/composer on line 23<\/code><\/p>\n<p>\u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c <code>sudo phpenmod phar dom<\/code>, \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0441\u0435\u0440\u0432\u0438\u0441 PHP-FPM \u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0435\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u0443. \u0422\u0435\u043f\u0435\u0440\u044c \u043d\u0435 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u043c\u043e\u0434\u0443\u043b\u044f JSON:<\/p>\n<details class=\"spoiler\">\n<summary>exception<\/summary>\n<div class=\"spoiler__content\">\n<p><code>PHP Fatal error:  Uncaught Error: Call to undefined function Composer\\Json\\json_decode() in phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Json\/JsonFile.php:182 Stack trace: #0 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Factory.php(313): Composer\\Json\\JsonFile->validateSchema() #1 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Factory.php(616): Composer\\Factory->createComposer() #2 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(418): Composer\\Factory::create() #3 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(540): Composer\\Console\\Application->getComposer() #4 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(191): Composer\\Console\\Application->getPluginCommands() #5 phar:\/\/\/usr\/local\/bin\/composer\/vendor\/symfony\/console\/Application.php(117): Composer\\Console\\Application->doRun() #6 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(125): Symfony\\Component\\Console\\Application->run() #7 phar:\/\/\/usr\/local\/bin\/composer\/bin\/composer(67): Composer\\Console\\Appli in phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Json\/JsonFile.php on line 182<\/code><\/p>\n<p><code>Fatal error: Uncaught Error: Call to undefined function Composer\\Json\\json_decode() in phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Json\/JsonFile.php:182 Stack trace: #0 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Factory.php(313): Composer\\Json\\JsonFile->validateSchema() #1 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Factory.php(616): Composer\\Factory->createComposer() #2 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(418): Composer\\Factory::create() #3 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(540): Composer\\Console\\Application->getComposer() #4 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(191): Composer\\Console\\Application->getPluginCommands() #5 phar:\/\/\/usr\/local\/bin\/composer\/vendor\/symfony\/console\/Application.php(117): Composer\\Console\\Application->doRun() #6 phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Console\/Application.php(125): Symfony\\Component\\Console\\Application->run() #7 phar:\/\/\/usr\/local\/bin\/composer\/bin\/composer(67): Composer\\Console\\Appli in phar:\/\/\/usr\/local\/bin\/composer\/src\/Composer\/Json\/JsonFile.php on line 182<\/code><\/p>\n<\/div>\n<\/details>\n<p>\u041d\u0435 \u0437\u0440\u044f \u0432 8-\u0439 \u0432\u0432\u0435\u0440\u0441\u0438 \u0435\u0433\u043e \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0438\u0437 \u043a\u043e\u0440\u043e\u0431\u043a\u0438. \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c  \u0438 \u043d\u0430\u043a\u043e\u043d\u0435\u0446 \u0433\u0435\u043d\u0435\u0440\u0438\u043c JSON:<\/p>\n<pre><code class=\"json\">{     \"name\": \"taras\/magento-framework-check\",     \"type\": \"project\",     \"minimum-stability\": \"stable\",     \"require\": {} } <\/code><\/pre>\n<p>\u0427\u0442\u043e\u0431\u044b \u043d\u0435 \u0437\u0430\u043f\u0430\u0440\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0441 \u043d\u0435\u0439\u043c\u0441\u043f\u0435\u0439\u0441\u0430\u043c\u0438, \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439 \u0430\u0432\u0442\u043e\u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430 \u0438 \u0442. \u0434., \u043f\u0440\u043e\u0441\u0442\u043e \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u043c \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u043e\u043b\u044f \u0438\u0437 JSON&#8217;\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0439 Magento 2.4.2. \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c:<\/p>\n<pre><code class=\"json\">{     \"name\": \"taras\/magento-framework-check\",     \"type\": \"project\",     \"minimum-stability\": \"stable\",     \"require\": {},     \"config\": {         \"preferred-install\": \"dist\",         \"sort-packages\": true     },     \"version\": \"2.4.2-p1\",     \"autoload\": {         \"exclude-from-classmap\": [             \"**\/dev\/**\",             \"**\/update\/**\",             \"**\/Test\/**\"         ],         \"files\": [             \"app\/etc\/NonComposerComponentRegistration.php\"         ],         \"psr-0\": {             \"\": [                 \"app\/code\/\",                 \"generated\/code\/\"             ]         },         \"psr-4\": {             \"Magento\\\\\": \"app\/code\/Magento\/\",             \"Magento\\\\Framework\\\\\": \"lib\/internal\/Magento\/Framework\/\",             \"Magento\\\\Setup\\\\\": \"setup\/src\/Magento\/Setup\/\",             \"Zend\\\\Mvc\\\\Controller\\\\\": \"setup\/src\/Zend\/Mvc\/Controller\/\"         }     },     \"conflict\": {         \"gene\/bluefoot\": \"*\"     },     \"prefer-stable\": true,     \"repositories\": [         {             \"type\": \"composer\",             \"url\": \"https:\/\/repo.magento.com\/\"         }     ],     \"extra\": {         \"magento-force\": \"override\"     } } <\/code><\/pre>\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435: \u044f \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u043b \u0440\u0430\u0437\u0434\u0435\u043b\u044b require-dev \u0438 autoload-dev.<\/p>\n<p>\u0422\u0430\u043a\u0436\u0435 \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0444\u0430\u0439\u043b\u0430 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 c \u043a\u0440\u0435\u0434\u0430\u043c\u0438 \u0434\u043b\u044f \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f Magento &#8212; auth.json:<\/p>\n<pre><code class=\"json\">{     \"http-basic\": {         \"repo.magento.com\": {             \"username\": \"&lt;public>\",             \"password\": \"&lt;private>\"         }     } }<\/code><\/pre>\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u0447\u0442\u043e \u0432\u0441\u0451 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043c <code>composer install<\/code>. \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0444\u0430\u0439\u043b\u043e\u0432:<\/p>\n<figure class=\"bordered full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u043f\u0435\u0440\u0432\u044b\u0439 \u043f\u0430\u043a\u0435\u0442. \u041a\u0430\u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Magento 2 \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u043f\u0430\u043a\u0435\u0442\u043e\u043c magento\/magento2-base. \u0421 \u043d\u0435\u0433\u043e \u0438 \u043d\u0430\u0447\u043d\u0435\u043c:<\/p>\n<details class=\"spoiler\">\n<summary> composer require magento\/magento2-base<\/summary>\n<div class=\"spoiler__content\">\n<p>$ composer require magento\/magento2-base<\/p>\n<p> Using version ^2.4 for magento\/magento2-base .\/composer.json has been updated Running composer update magento\/magento2-base Loading composer repositories with package information Updating dependencies Lock file operations: 65 installs, 0 updates, 0 removals<\/p>\n<ul>\n<li>\n<p>Locking composer\/ca-bundle (1.2.10)<\/p>\n<\/li>\n<li>\n<p>Locking composer\/composer (1.10.22)<\/p>\n<\/li>\n<li>\n<p>Locking composer\/semver (1.7.2)<\/p>\n<\/li>\n<li>\n<p>Locking composer\/spdx-licenses (1.5.5)<\/p>\n<\/li>\n<li>\n<p>Locking composer\/xdebug-handler (1.4.6)<\/p>\n<\/li>\n<li>\n<p>Locking container-interop\/container-interop (1.2.0)<\/p>\n<\/li>\n<li>\n<p>Locking justinrainbow\/json-schema (5.2.11)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-code (3.4.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-config (2.6.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-console (2.8.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-crypt (2.6.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-di (2.6.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-diactoros (1.8.7p2)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-escaper (2.8.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-eventmanager (3.3.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-filter (2.11.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-form (2.15.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-http (2.14.3)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-hydrator (2.4.2)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-i18n (2.11.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-inputfilter (2.10.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-json (2.6.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-loader (2.7.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-log (2.12.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-math (2.7.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-modulemanager (2.9.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-mvc (2.7.15)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-psr7bridge (0.2.2)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-serializer (2.10.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-server (2.9.2)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-servicemanager (2.7.11)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-soap (2.9.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-stdlib (3.5.0)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-text (2.7.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-uri (2.8.1)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-validator (2.14.5)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-view (2.11.5)<\/p>\n<\/li>\n<li>\n<p>Locking laminas\/laminas-zendframework-bridge (1.3.0)<\/p>\n<\/li>\n<li>\n<p>Locking magento\/composer (1.6.0)<\/p>\n<\/li>\n<li>\n<p>Locking magento\/magento-composer-installer (0.2.1)<\/p>\n<\/li>\n<li>\n<p>Locking magento\/magento2-base (2.4.2-p1)<\/p>\n<\/li>\n<li>\n<p>Locking magento\/zendframework1 (1.14.5)<\/p>\n<\/li>\n<li>\n<p>Locking monolog\/monolog (1.26.1)<\/p>\n<\/li>\n<li>\n<p>Locking pelago\/emogrifier (v3.1.0)<\/p>\n<\/li>\n<li>\n<p>Locking phpseclib\/phpseclib (2.0.32)<\/p>\n<\/li>\n<li>\n<p>Locking psr\/container (1.1.1)<\/p>\n<\/li>\n<li>\n<p>Locking psr\/http-message (1.0.1)<\/p>\n<\/li>\n<li>\n<p>Locking psr\/log (1.1.4)<\/p>\n<\/li>\n<li>\n<p>Locking seld\/jsonlint (1.8.3)<\/p>\n<\/li>\n<li>\n<p>Locking seld\/phar-utils (1.1.1)<\/p>\n<\/li>\n<li>\n<p>Loc<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<\/details>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-413598","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/413598","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=413598"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/413598\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=413598"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=413598"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=413598"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}