Первое правило: не делайте вторую доработку поверх первой

Зафиксируйте точное время сбоя, URL и последнее изменение. Если начать «чинить на глаз», через несколько правок вы потеряете связь между причиной и симптомом.

Где искать причину по симптому

СимптомСлойЧто открыть
Страница 500/белаяBackend/PHPerror log, php -l, diff
Не работает кнопка/формаFrontend/AJAXDevTools Console + Network
БД/валидацияResponse + DB + CMS log
Сайт весь недоступенWeb/PHP-FPM/configNginx/Apache/PHP-FPM status
Только мобильная версияCSS/JSresponsive mode, console, changed assets

Если проект в Git

BASH
git status
git diff --stat
git diff
git log --oneline -n 10

git diff HEAD~1 -- path/to/file.php

Если Git нет: найти свежие файлы

BASH
find /path/to/site -type f -mtime -2   -printf '%TY-%Tm-%Td %TH:%TM %p\n' 2>/dev/null   | sort -r | head -n 150

Как делать rollback правильно

  1. сохраните текущую проблемную версию отдельно;
  2. откатывайте минимальный участок: один файл, один шаблон, один plugin/Extra;
  3. если менялась база, отдельно определите, совместим ли старый код с новой схемой;
  4. после каждого отката проверяйте один и тот же воспроизводимый сценарий;
  5. не удаляйте свежие логи до окончания диагностики.

Что проверить после «вроде заработало»

Главная страница — недостаточная проверка. Пройдите авторизацию, форму, поиск, корзину/заказ, AJAX, административное сохранение, мобильную версию и cron-задачи, если они связаны с изменением.

Быстрая проверка синтаксиса изменённых PHP-файлов

BASH
php -l /path/to/changed-file.php

find /path/to/changed-dir -type f -name '*.php' -print0   | xargs -0 -n1 php -l

Связанные инструкции