CSS и JavaScript Magento не загружаются из-за использования пути к файловой системе
Я не смог установить модуль с помощью Magento Connect, получив ошибку Connection Error try again later
. Следуя инструкциям разработчика модуля, я попытался исправить разрешения в корневом каталоге документа с помощью:
find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
chmod o+w var var/.htaccess app/etc
chmod 550 mage
chmod -R o+w media
Это все еще не работало, поэтому я закончил установку модуля вручную. Затем я вошел в серверную часть администратора, и Magento пытался обслуживать CSS-файлы, используя системные пути к файлам вместо URL-адресов, например:
<link rel="stylesheet" type="text/css" href="/home/user/public_html/js/calendar/calendar-win2k-1.css" />
<link rel="stylesheet" type="text/css" href="/home/user/public_html/skin/adminhtml/default/default/reset.css" media="all" />
<link rel="stylesheet" type="text/css" href="/home/user/public_html/skin/adminhtml/default/default/boxes.css" media="all" />
<link rel="stylesheet" type="text/css" href="/home/user/public_html/skin/adminhtml/default/default/custom.css" media="all" />
<link rel="stylesheet" type="text/css" href="/home/user/public_html/skin/adminhtml/default/default/xmlconnect/boxes.css" media="all" />
<link rel="stylesheet" type="text/css" href="/home/user/public_html/skin/adminhtml/default/default/print.css" media="print" />
<link rel="stylesheet" type="text/css" href="/home/user/public_html/skin/adminhtml/default/default/menu.css" media="screen, projection" />
Я немедленно удалил расширение и попытался сопоставьте завивки с другого сервера с работающим Magento безрезультатно. У меня также есть:
- Очищены локальные, APC и кэш Magento
- Посмотрел в журналах ошибок (ведение журнала включено)
- дважды проверил правильные значения web/незащищенный/base_url и web/безопасный/base_url в БД
- Перезагрузка, 3 раза;)
Сокращение не используется. Файлы CSS слияния включены, однако я не могу понять, как отключить их без интерфейса администратора (сохранение и навигация не работает, даже когда я заменяю правильные значения на Firebug). Любые идеи будут высоко оценены!
(Вопрос, первоначально опубликованный @reflexiv о переполнении стека)
2 answers
Magento использование URL-адресов полного пути для доступа к CSS-файлам является распространенной ошибкой, которая возникает в результате двух событий:
- С включенным объединением CSS-файлов
- Magento не может читать/записывать в папку/носитель.
Чтобы устранить эту проблему, пожалуйста, убедитесь, что:
- Носитель/папка существует в вашей установке Magento.
- Носитель/папка доступны для записи вашим веб-сервером.
Как @flochtililoch опубликовано в стеке Обмен:
Вы должны проверить, что apache действительно владеет каталогом мультимедиа, сначала проверив , какой пользователь apache работает как , а затем соответствующим образом настроив разрешения:
chown -R <apache_user> media
chmod -R ug+w media
Дополнительная информация здесь: Разрешения файловой системы Magento
Я только что столкнулся с очень похожей проблемой при копировании сайта с реального сервера на локальный сервер apache для разработчиков (MAMP). Для меня это решило следующее:
- очистка
media/css
&media/js
из всех файлов - В таблице базы данных
core_config_data
настройка:dev/js/merge_files
до 0 (было 1)dev/css/merge_css_files
до 0 (было 1) - очистка
var/cache
Перезагрузил интерфейс и серверную часть, и теперь файлы css/js обслуживаются правильно.