.htaccess — маленький файл, который может сильно влиять на сайт: включать ЧПУ, редиректить на HTTPS, закрывать доступ, задавать кеширование и управлять правилами Apache.
Из-за одной неверной строки сайт может начать отдавать 500, 403, 404 или уйти в бесконечный редирект. Поэтому .htaccess лучше править только с копией и пониманием текущих правил.
С чего начать диагностику
При ошибке .htaccess нужно понять, какое правило срабатывает неправильно: rewrite, redirect, deny, auth, headers или кеширование.
- Сделать копию текущего .htaccess.
- Посмотреть код ошибки: 403, 404, 500 или redirect loop.
- Проверить последние добавленные правила.
- Сверить правила CMS с текущей структурой сайта.
- Посмотреть error log Apache/nginx, если сайт работает через связку.
Частые причины
- синтаксическая ошибка в правиле
- циклический редирект HTTP/HTTPS или www/non-www
- неверное RewriteRule для ЧПУ
- запрет доступа к нужной папке
- конфликт правил CMS и ручных редиректов
- копирование правил с другого сайта без адаптации
Что можно проверить без риска
Самая безопасная проверка — работать с копией и отключать правила по одному, а не стирать весь файл.
- сделать резервную копию .htaccess
- проверить, когда файл менялся последний раз
- посмотреть, какие правила отвечают за HTTPS и ЧПУ
- проверить сайт после каждой маленькой правки
- не оставлять временные тестовые правила
Когда лучше не экспериментировать
Удаление .htaccess может временно убрать ошибку, но сломать ЧПУ, редиректы, защиту и SEO. Лучше найти проблемную строку и исправить ее, сохранив нужные правила.
Как я обычно чиню такую проблему
Я разбираю .htaccess как набор правил: отделяю редиректы от ЧПУ, защиту от кеширования, затем проверяю, какое правило ломает нужный URL.
- Смотрю симптомы: адрес страницы, скриншот ошибки, время появления, что меняли перед сбоем.
- Проверяю серверные логи, конфигурацию сайта, права файлов, базу данных и зависимости.
- Делаю точечную правку: без лишней смены CMS, шаблона или случайной установки плагинов.
- Проверяю результат на основной странице, мобильной версии, формах и важных пользовательских сценариях.
- Кратко объясняю, что сломалось и что сделать, чтобы ошибка не повторялась.
Что подготовить для оценки
- адрес сайта или проблемной страницы
- когда появилась ошибка и что меняли перед этим
- доступ к хостингу, серверу или админке, если он нужен для проверки
- скриншот ошибки или текст из консоли, если он есть
- приоритет: срочно восстановить работу или спокойно разобраться в причине
Сроки
| Одна ошибка редиректа или ЧПУ | 30-90 минут |
|---|---|
| Несколько конфликтующих правил | 1-3 часа |
| Миграция структуры URL | по списку адресов |
Вопрос-ответ
Можно ли заменить .htaccess стандартным файлом CMS?
Можно, если проблема только в ЧПУ. Но ручные редиректы и защита могут потеряться, поэтому сначала нужна копия.
Почему после правки .htaccess появилась 500?
Чаще всего это синтаксис, неподдерживаемая директива на хостинге или конфликт правил.
Нужен ли .htaccess на nginx?
В чистом nginx .htaccess не работает. Правила нужно переносить в конфигурацию nginx.
Итог
.htaccess — мощный, но чувствительный файл. Его нужно чинить точечно: сохранить рабочие правила, найти конфликт и проверить результат на важных страницах.
Если нужно быстро разобраться с такой ошибкой на сайте, напишите в Telegram: @rabotator_support. Посмотрю симптомы, скажу, что нужно проверить, и предложу аккуратный план исправления.