SonG

SonG

С нами с 14 ноября 2017; Место в рейтинге пользователей: #835
Роман
25 ноября 2019, 15:58
3
0
Итак, в течение недели пытался разобраться в данной проблемой. Перерыл весь интернет и понял, что данная проблема достаточно часто встречается. У людей в основном она возникает просто так через месяц после запуска сайта (как и у меня).
Проблема замечалась еще в 2012 году, но за все время поисков я не смог найти адекватного ее решения. В основном все советуют отключать сжатие css js, чистить кэш и прочее, но это не помогает.
Чего я только не делал за эту неделю, но методом проб, ошибок и кучи потраченных нервов мне удалось прийти к самому простому и эффективному решению данной проблемы, которое не затронет структуру вашего сайта и БД.

В шапке оставил теги, по которым люди чаще всего ищут решение данной проблемы.

Теперь к сути:
Конкретного решения (то есть из за чего возникает данная проблема и как решить ее точечно) я не нашел, хотя очень хотелось бы. Но нашлось решение другое, возможно даже лучшее. Нам не потребуются новые домены и базы данных.

По пунктам:
1. Выходим из админки MODX.
2. Удаляем оба файла .htaccess (в корне сайта и в /core).
3. Вручную чистим кэш (удаляем всё из папки /core/cache).
4. Выгружаем нашу базу данных любым удобным способом (я делал через phpMyAdmin).
5. Удаляем все таблицы из БД(чтобы база данных была пустая).
6. Скачиваем с офсайта MODX файлы для установки.
7. Заливаем их на сервер поверх наших файлов с заменой (перезаписать все совпадения) и не забываем про папку setup.
8. Далее идем по адресу 'ваш-сайт.ру/setup' и устанавливаем MODX (не обновляем, а именно устанавливаем, первый пункт в списке предложенных). Я так же отключал сжатие css js. Тут как обычно, выбираем нашу ранее очищенную БД и устанавливаем. В конце установки уберите галочку «удалить установочные файлы», так как папка setup нам еще понадобится.
9. Далее идем в базу данных, удаляем вновь созданные таблицы и импортируем нашу старую базу, которую мы выгрузили в пункте 4. Чистим кэш (/core/cache).
10. Снова идем по адресу 'ваш-сайт.ру/setup', тут нам могут сказать, что надо удалить папку .locked в папке setup чтобы продолжить, делаем это и перезагружаем страницу установки. Теперь все нормально и нам остается лишь выбрать второй пункт «обновить», убрать чекбокс «сжатие css js» и обновить MODX.
11. Снова чистим кэш и пробуем заползти в админку. У меня после такого обновления (О, ЧУДО) админка ожила и все работает как раньше, ничего не слетело и не уехало, все на месте. Не забываем переименовать файлы ht.access

За время поисков решения я смог предположить несколько вариантов появления данной проблемы, но это лишь предположения:
— Вредоносный php скрипт (проблемы с безопасностью)
— Неверное системное время (возможно заходили в админку с компьютера с неправильно настроенным временем) — Мутные делишки хоста. За время поисков обнаружилось аж 4-ро людей с такой проблемой, которые хостились на MasterHost, как и я. «Совпадение? Не думаю...». Хотя с данным хостингом работаю на MODX давно и таких проблем на прошлом проекте с версией 2.5.2 не возникало. Может быть и правда совпадение, но я все же новый проект перенес на более популярный хост))
Еще на счет хостинга — еще до начала недельной эпопеи, греша на хост, я переправил сайт на новое место, но проблема осталась, так что нельзя быть на 100% уверенным в «мутных делишках» хоста, хотя возможно какие-то сбои повредили js-скрипты. Тут лучше судить знающим людям.

Надеюсь, что моя инструкция поможет с решением данный проблемы тем, у кого она возникла. Спасибо за внимание)