No valid context specified
Короче намудрил я с контекстами.
У меня в одной админке несколько сайтов по контекстам разбросано. Всё работало, кроме загрузки фотографий в ms2Gallery — при загрузке к картинкам добавлялся путь /en/assets вместо /assets/.
Решил я исправить это дело и начал копаться во всём, до чего смог дотянуться: удалил Redirector, переустанавливал и обновлял приложения — ничего не помогало…
Ну в общем я решил заменить ключи контекстов с site-name-ru на site_name_ru — вот тут-то и начались танцы с бубном…
Админка это делать не позволяет, поэтому полез в базу. Пришлось найти абсолютно все совпадения с ключём контекстов во всех таблицах и заменить их на правильные. Всё заменил, но…
Проблема: сейчас в дереве ресурсов админки переименованные контексты не раскрываются, как будто в них нету ресурсов.
Как заставить систему понимать переименованные контексты?
UPD. Вопрос решен, смотри комментарий Василия
У меня в одной админке несколько сайтов по контекстам разбросано. Всё работало, кроме загрузки фотографий в ms2Gallery — при загрузке к картинкам добавлялся путь /en/assets вместо /assets/.
Решил я исправить это дело и начал копаться во всём, до чего смог дотянуться: удалил Redirector, переустанавливал и обновлял приложения — ничего не помогало…
Ну в общем я решил заменить ключи контекстов с site-name-ru на site_name_ru — вот тут-то и начались танцы с бубном…
Админка это делать не позволяет, поэтому полез в базу. Пришлось найти абсолютно все совпадения с ключём контекстов во всех таблицах и заменить их на правильные. Всё заменил, но…
Проблема: сейчас в дереве ресурсов админки переименованные контексты не раскрываются, как будто в них нету ресурсов.
- Чистка кэша, сессий и всего прочего не помогла. context_key у ресурсов понятно уже новый и соответствуют ключу контекстов.
- При создании нового ресурса в этих контекстах — ресурс создаётся, но в дереве не показывается.
- При заходе на эти сайты белая страница, а в логи сыпится следующая ошибка:
[2016-09-06 09:32:37] (ERROR @ /home/s***/www/core/model/modx/modx.class.php : 2302) No valid context specified: ****_***_ru - Сайты на модхосте.
Как заставить систему понимать переименованные контексты?
UPD. Вопрос решен, смотри комментарий Василия
Комментарии: 13
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Верни всё как было и поищи в гугле правила rewrite для nginx, чтобы по адресу /en/assets тебе отдавался контент из /assets. Это гораздо проще и правильнее, чем ты уже сейчас намудрил.
Ах, да, еще можно вообще тупо убирать /en у картинок при выводе в чанке, фильтром replace.
Спасибо за дельный совет! Не подумал сразу…
Но этого не сделаешь для превьюшек в админке. Кстати, это касается и miniShop2 — там точно такая же проблема…
Кстати, можно сделать еще круче — без редиректа, а просто подставляя нужную директорию, вот так:
P.S. Оффтоп: на модхост будет добавляться MODX 2.5.1 или он ещё глючный? Просто там вроде как с адаптивом всё в порядке уже…
Попробую включить, посмотрю на отзывы.
Скорее всего у тебя там брузер что-то закэшировал. Пиши в поддержку хостинга, говори какой сайт и какие адреса куда отправить.
Вообще, ради эксперимента я:
- удалил все контексты кроме web,
- удалил все кастомные настройки контекста web,
- удалил все страницы кроме главной,
- удалил все дополнения, кроме ms2Gallery,
- удалил все плагины кроме ms2Gallery,
- сменил link_tag_scheme на full, как советовал Владимир чуть ниже (было -1)
И после каждого действия, после каждого удалённого приложения я очищал кэш и проверял загрузку в разных браузерах и компах.Но проблема осталась!!! При загрузке к картинке добавляется /en/ перед /assets/.
Под конец, уже взял и переустановил сайт подчистую через панель хостинга — только после этого заработала загрузка…
Откатил все мои изменения из бэкапа и вернул старый добрый полурабочий сайт.
Напишу в поддержку хостинга, если не получится, буду переносить сайт на чистую установку вручную (таблицами)…
Если её убрать и перелогиниться, то картинки грузятся нормально.