Чистка сайта от лишних файлов и вирусов

Чистка сайтаСегодня об очистке сайта от всякой ерунды, будь то вирусы или лишние файлы.

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

По ходу дела обнаружил кучу лишних файлов, которые присутствовали в ранних версиях WordPress, потом устарели и были исключены, но на моём сайте остались. Дело в том, что при обновлении WordPress (видимо) умеет только дописывать и заменять файлы, а вот удалять старые не умеет. И они накапливаются.

У меня WordPress работает уже больше полутора лет, я его добросовестно обновлял всё это время, и «добра» накопилось порядочно.

В этом, наверно, ничего особенно страшного нет, но я не люблю лишнее, поэтому решил их удалить и сейчас расскажу как. Метод подойдёт для любого сайта, не только работающего на WordPress.

Но эта заметка ещё и о том, как справиться с вирусами на сайте – это гораздо интереснее.

Итак, Вам понадобятся:

  1. резервная копия Вашего сайта
  2. дистрибутив Вашей версии WordPress
  3. программа для сравнения каталогов
  4. программа для сравнения файлов по содержимому

Где всё это взять

Резервную копию возьмите на своём хостинге. Здесь не расскажу как это делать, очень сильно зависит от конкретного хостинга. Если никогда не делали – обязательно научитесь! И делайте резервные копии регулярно!

Надо добавить, что речь идёт о резервной копии Вашего сайта (файлов Вашего сайта), так как WordPress умеет делать резервную копию Ваших записей и статей – это не то.

Дистрибутив Вашей версии можете скачать через «админку». Откройте «Консоль — Обновления» и там будет кнопочка «Скачать«. Заодно узнаете, какая у Вас версия 😉

Программа для сравнения каталогов должна Вам подсказать, чем отличаются два каталога. В одном у Вас будут файлы из дистрибутива, во втором – из резервной копии Вашего сайта. После сравнения Вы будете знать, какие файлы добавились, какие исчезли, какие изменились.

Программа для сравнения файлов решает несколько другую задачу. Вы ей указываете на два файла, она проверяет их содержимое, и показывает, что изменилось в их тексте.

Для решения первой задачи я использую FAR Manager, но его многие не любят. Для решения второй задачи я использую ещё одну программу, она не бесплатная, поэтому я ссылку на неё давать не буду.

Знаю, что с обеими задачами прекрасно справляется Total Commander, поэтому его Вам и порекомендую. Как с помощью него сравнить каталоги и файлы по содержимому Вам подскажут поисковики.

Что делать

  1. Скачайте и разархивируйте в один каталог файлы из резервной копии Вашего сайта, во второй каталог файлы из дистрибутива.
  2. Возьмите программу для сравнения каталогов, и сравните Ваши два каталога. В программе должны быть опции, среди них надо учесть следующие:
    • сравнивать вложенные каталоги – включите, иначе программа сравнит только файлы в корневом, и не пойдёт дальше, и не доберётся, скажем, до файлов Вашей темы;
    • сравнивать дату и время создания – отключите, так как очевидно, что Вы делали свой сайт не в день создания дистрибутива, поэтому даже у абсолютно одинаковых файлов в дистрибутиве и на Вашем сайте даты будут разные;
    • сравнивать размер файлов – включите, т.к. это первый признак того, что файл изменился;
    • сравнивать файлы по содержимому – включите, это очень важный параметр. На этом этапе он Вам не покажет, в чём именно различия, но отметит файлы, которые имеют отличия в тексте.

Вот так выглядит окно параметров в Far Manager:

Параметры расширенного сравнения файлов

А результат сравнения выглядит так:

Результат сравнения файлов

На рисунке слева каталог с файлами из дистрибутива, а справа – из моей резервной копии. Жёлтым отмечены расхождения. В частности, в каталоге справа много файлов, которых нет в каталоге слева (те самые устаревшие). В каталоге слева есть файл wp-config-sample.php, я его удалил с сайта, так как это образец, но он есть в дистрибутиве. А вот файл wp-blog-header.php отмечен и там, и там. Значит в нём есть какие-то изменения.

Жёлтым также отмечены каталоги wp-admin, wp-content, wp-includes, поэтому надо перейти в эти каталоги и повторить операцию сравнения уже для каждого из них отдельно.

Таким образом Вы узнаете, какие файлы у Вас лишние, а какие изменились.

  1. Составьте список тех файлов, которые изменились, и сравните каждую пару по содержимому. Результат сравнения выглядит примерно так:

Изменения в файле

Файл в левой части картинки содержит текст, которого нет в файле в правой части, он отмечен синим. Это просто для примера. Подобные программы показывают что добавилось, что было исключено и что изменилось.

Вот тут наступает самое интересное! Если у Вас актуальная версия, и Вы нашли различия в файлах .php, а тем более .js, которые Вы туда не вносили, то значит, что это кто-то сделал за Вас! Возможно, вирус. Я бы заменил эти файлы на своём сайте оригинальными, из дистрибутива (по FTP или любыми доступными Вам способами).

  1. Составьте список «лишних» файлов и определите, какие из них действительно лишние.

Не стирайте всё подряд! Всегда помните, что лучше не удалить лишнее, чем стереть нужное! В случае с WordPress не вздумайте удалять wp-config.php и .htaccess – эти файлы не входят в дистрибутив, но они нужны для работы сайта и безопасности. Также не стоит удалять robots.txt.

Помните, что Ваш сайт содержит загруженные Вами картинки, установленные плагины и т.д. Всего этого, разумеется, нет в дистрибутиве.

Чтобы быть абсолютно уверенным, я скачал все дистрибутивы WordPress за последние полтора года (их оказалось не так уж и много) и прежде чем удалить файл, искал его в более ранних версиях, чтобы понять, откуда он взялся.

Успехов!
И делайте больше резервных копий!

И напоследок…

Если совсем ничего не получается (или не совсем, а только что-то), то обращайтесь за помощью ко мне.

Понравилась статья? Поделитесь с друзьями:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *