Magento 2 не загружает CSS и JavaScript

Я установил magento 2 успешно на localhost, но я не могу видеть панель администратора, поскольку она делает ошибку 404 для меня.

Во-вторых, когда я открываю front-end, тогда CSS и JavaScript не загружаются. Они также отображают 404 ошибки.

Также, когда я пытаюсь запустить команду:

{your Magento install dir}/bin/magento setup:static-content:deploy

Я получил следующую ошибку:

[InvalidArgumentException]                                              
There are no commands defined in the "setup:static-content" namespace.

Ответ 1

Эта работа для меня. используйте эту команду php bin/magento setup:static-content:deploy

Шаг 1: В CMD Откройте корневой каталог с помощью команды cd

Шаг 2: php bin/magento setup:static-content:deploy - запустите эту команду

тогда, проверьте свою папку pub/static, файлы CSS и Js будут доступны там

Обратитесь

Ответ 2

Попробуйте выполнить ту же команду, что и пользователь root, добавив sudo, как показано ниже

sudo php bin/magento setup:static-content:deploy

Ответ 3

Вот самое простое решение, если показать имя версии в пути CSS

как: pub/static/version323334/

затем запустите этот запрос в моем sql

 INSERT INTO core_config_data (path, value) 
VALUES ('dev/static/sign', 0) 
ON DUPLICATE KEY UPDATE value = 0;

после этого очистите кеш конфига

 bin/magento cache:clean config

Вы также можете отключить статическую версию файла формы администратора

enter image description here

Ответ 4

Хотя это старый вопрос, его ответы не помогли мне исправить мою проблему, что бы сгенерировать такое же сообщение об ошибке. Я предлагаю следующее:

  • Сначала вы можете найти свою основную причину. В папке magento2 найдите ошибку magento следующим образом:

хвост var/log/system.log

Или найдите, есть ли ошибка в файле журнала ошибок php

Если вы обнаружили изолированную ошибку, исправьте ее.

  1. Если ошибка не найдена, выполните следующие действия. Удалите папку генерации, выполнив следующие команды:
sudo rm -rf pub/static
sudo rm -rf var/cache
sudo rm -rf var/composer_home
sudo rm -rf var/generation
sudo rm -rf var/page_cache
sudo rm -rf var/view_preprocessed

После их удаления вы можете повторно создать их, выполнив следующие команды:

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

Ответ 5

Мы также столкнулись с этим вопросом и разобрали его. Для этого вам нужно перейти непосредственно в каталог bin и использовать эту команду. Например,

php magento setup:static-content:deploy

Несколько раз, если вы запустите эту команду за пределами bin или из любого каталога

php bin/magento setup:static-content:deploy

тогда вы получите ошибку (возможно, это из-за системы linux),

[InvalidArgumentException]
  There are no commands defined in the "setup:static-content" namespace.

Update:

Если какой-либо файл *.xml в наших настраиваемых модулях недействителен, то придет такая же ошибка.

Ответ 6

У меня также была такая же проблема, и ниже шаг решает мою проблему:

Шаг 1. Перейдите в каталог, в котором установлен magento.
Шаг 2: Запустите "sudo php bin/magento setup: static-content: deploy"

Ответ 7

Предоставить статическую команду развертывания следующим образом:

php bin/magento setup:static-content:deploy

Укажите полное разрешение для папок pub и var.

Ответ 8

Выполните следующие команды в интерфейсе CLI вашей корневой папки Magento2:

$ php bin/magento setup:static-content:deploy
$ php bin/magento indexer:reindex

Затем удалите папку var этой командой в корне magento2.

$ rm -rf var/*

Затем обновите свою домашнюю страницу и панель администратора.

Ответ 9

Если вы столкнулись с проблемой css и дизайном после установки в Windows, выполните следующие действия.

  • php bin/magento setup:static-content:deploy
  • php bin/magento indexer:reindex
  • убедитесь, что apache "rewrite_module" включен, а затем перезагружает сервер.
  • удалить папку кэша в var/cache

Ответ 10

вам просто нужно запустить эту команду на своем терминале

php bin/magento setup:static-content:deploy

Убедитесь, что вы указали корневой путь вашего magento в терминале, а затем выполните приведенную выше команду

Ответ 11

Просто откройте

MAGENTO_ROOT/приложение/и т.д. /di.xml

и заменить ниже номер строки кода 574

<item name="view_preprocessed" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink</item>

К

<item name="view_preprocessed" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Copy</item>

УДАЛИТЬ

MAGENTO_ROOT/PUB/статический/_requirejs

MAGENTO_ROOT/паб/статический/adminhtml

MAGENTO_ROOT/паб/статический/интерфейс

Ответ 12

Простое и правильное решение, надеюсь, полезно.

Перейдите к своему значку wampserver и нажмите на него, а затем

  • Apache- > apache modules- > rewrite_module [включить это]

После этого запустите все службы и проверьте его.

Ответ 13

Следующий ответ работает для меня, спасибо:

открыть файл MAGENTO_ROOT/app/etc/di.xml

и заменить ниже номер строки кода 574

Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink

с

Magento\Framework\App\View\Asset\MaterializationStrategy\Копировать

DELETE

MAGENTO_ROOT/pub/static/_requirejs

MAGENTO_ROOT/pub/static/adminhtml

MAGENTO_ROOT/pub/static/frontend

Ответ 14

Эта ошибка возникает, если вы неправильно настроили разрешение. Он не видит, что команда действительно существует.

Попробуйте запустить:

sudo find . -type d -exec chmod 770 {} \; && sudo find . -type f -exec chmod 660 {} \; && sudo chmod u+x bin/magento sudo chown -R $(whoami):www-data .

Измените www-данные на соответствующего пользователя веб-сервера. например apache или www-data.

Ответ 15

Это сработало для меня:

1) Развертывание статического содержимого. Выполните команду ниже из корневого каталога Magento 2:

sudo php bin/magento setup:static-content:deploy

2) Очистите все в каталоге var/cache или сбросьте кеш Magento 2, используя следующую команду:

php bin/magento cache:flush

3) Установите правильные разрешения для каталогов Magento 2, выполнив следующую команду из корневого каталога Magento 2:

sudo find . -type d -exec chmod 770 {} \; && sudo find . -type f -exec chmod 660 {} \; && sudo chmod u+x bin/magento

Надеюсь, что это поможет.

Ответ 16

Я просто делаю

rm -rf var/di

то он снова работает.

Ответ 17

Обычно это происходит из-за неудачной компиляции в папке var/di. Вы можете решить это, удалив все в своей папке var.

Также в будущем не забывайте, что командная строка magento реализует уровни многословности symfony: добавьте --v или ---v к вашей команде, чтобы увидеть точную ошибку.

Ответ 18

Пожалуйста, выполните следующие действия, чтобы избавиться от этих проблем.

1) Загрузите Magento 2.

2) Извлеките это в каталог www или htdocs.

3) Установите пурпурный. Не используйте localhost, используйте 127.0.0.1 в адресе url и admin в магазине.

4) После успешной установки НЕ РАБОТАЙТЕ MAGENTO.

5) Теперь удалите кеш/сеанс magento 2. Перейдите к указанным ниже путям и удалите файлы.

Magento Root > var > cache > Delete all files

Magento Root > var > page_cache > Delete all files

Magento Root > var > session > Delete all files

6) Измените поведение символических ссылок для некоторых статических ресурсов, как указано ниже: -

Когда Magento 2 не находится в рабочем режиме, он попытается создать символические ссылки для некоторых статических ресурсов на локальном сервере. Мы должны изменить это поведение Magento 2, перейдя к редактированию файла ROOT > app > etc > di.xml. Откройте файл di.xml в своем любимом редакторе кода, найдите раздел virtualType name="developerMaterialization". В этом разделе ниже вы найдете элемент <item name="view_preprocessed" xsi:type="object">, который необходимо изменить. Вы можете изменить его, изменив следующий контент:

Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink

To:

Magento\Framework\App\View\Asset\MaterializationStrategy\Copy

7) Удалите все файлы, кроме .htaccess

Magento Root > pub > static > Delete all files except **.htaccess**

ЕГО СОВЕРШЕННО. Теперь вы можете запустить URL-адрес фальсификатора и URL-адреса magento

Ответ 19

Если после установки в Magento 2 у вас возникла проблема с темами, выполните следующие действия.

1) Запустите этот запрос:

INSERT INTO core_config_data (path, value) VALUES ('dev/static/sign', 0)
ON DUPLICATE KEY UPDATE value = 0;

2) Для локальной машины выполните этот запрос:

UPDATE 'binarytrue'.'core_config_data' SET 'value' = '0' WHERE 
'core_config_data'.'path' LIKE  '%web/seo/use_rewrites%';

3) Удалите все файлы из каталога pub и var:

sudo rm -rf var/di var/generation/ var/page_cache/ var/cache/
pub/static/frontend/ pub/static/adminhtml/ pub/static/_requirejs/ 
pub/static/deployed_version.txt

4) Дайте разрешение на каталоги var и pub вашего проекта:

sudo chmod -R 777 var/* pub/*

5) Настройка обновления:

sudo bin/magento setup:upgrade

6) Развертывание контента:

sudo php bin/magento setup:static-content:deploy

После этих шагов вы сможете увидеть правильную тему.

Ответ 20

После попытки всех решений, упомянутых здесь и в https://magento.stackexchange.com/questions/97209/magento-2-css-and-javascript-not-loading-from-correct-folder

Мы не смогли запустить эту вещь.

Но это очень странный ответ, но он сработал для нас.

Во-первых, мы очистили кеш и убедились, что статические файлы создаются в папке pub/static/. Затем проверил, что файл deployed_version.txt содержит тот же номер версии, что и загружаемый в URL.

Нашим главным виновником был файл .htaccess, который присутствовал в папке pub. В папке pub/static должен быть только один файл .htaccess, но не в папке pub. Это помогло нам после поиска повсюду.

Надеюсь, что это помогает другим, ищущим подобный ответ.

Ответ 21

Изменение dev/static/sign на 0 в данных конфигурации ядра сработало для меня

затем,

bin/magento cache:flush

затем,

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

Ответ 22

Если вы столкнулись с проблемой дизайна загрузки css и js после установки в magento2

выполните следующие действия:

откройте терминал и перейдите к корневому веб-корню magento

 $ cd /var/www/html/magento2 

Шаг 1.

 $ php bin/magento setup:static-content:deploy

Шаг 2.

 $ php bin/magento indexer:reindex

Шаг 3.

убедитесь, что apache "rewrite_module" включен, а затем перезагружает сервер

Шаг 4.

 $ chown -R www-data:www-data /var/www/html/magento2 

Шаг 5.

 $ chmod -R 777 /var/www/html/magento2 

Шаг 6.

удалить папку кэша в var/cache

Вышеуказанный шаг работает. Я надеюсь, что это тоже сработает для вас.

Сообщите мне, если возникнет проблема.:)