Как пользоваться: Тестер .htaccess
- Вставьте содержимое файла
.htaccess(или нажмите Test rules в генераторе .htaccess). - Проверьте панель валидации: в ней показаны ошибки, которые приведут к ошибке 500, и предупреждения о правилах, которые никогда не срабатывают.
- Введите URL запроса для симуляции: каждое условие и правило будет проверено, а итоговый редирект или перезапись отобразится в результате.
- Укажите список существующих файлов и каталогов, чтобы протестировать условия
-fи-d.
Что проверяет валидатор
- Неизвестные директивы и опечатки — Apache отвечает на любую неизвестную директиву в .htaccess ошибкой 500 Internal Server Error.
- Директивы только для сервера, например
ServerName,<VirtualHost>или<Directory>, которые не допускаются в .htaccess. - Незакрытые контейнеры —
<IfModule>или<FilesMatch>, которые не закрыты. - Некорректные регулярные выражения и неизвестные флаги
RewriteRule/RewriteCond. - Логические ошибки: шаблоны, начинающиеся с
^/(в .htaccess они никогда не совпадут), редиректы безL, условия без правила, правила доRewriteEngine On. - Совместимость:
Order/Allow/Denyиз Apache 2.2,php_valueна хостингах с PHP-FPM, смешанный синтаксисOptions.
Как работает симуляция перезаписи
Как и Apache, тестер убирает начальный слэш из пути, проверяет каждое правило RewriteRule по порядку, проверяет строки RewriteCond (с учётом [OR] и [NC]), подставляет обратные ссылки $1 и %1 и серверные переменные, например %{HTTP_HOST}, %{HTTPS}, %{REQUEST_URI} и %{QUERY_STRING}, а также применяет флаги R=301, L, QSA, F и G. После внутренней перезаписи правила выполняются повторно, как это делает Apache в контексте каталога. Также тестируются Redirect и RedirectMatch.
Ограничения
Симулятор использует регулярные выражения JavaScript, которые для почти всех шаблонов .htaccess совпадают с PCRE. Он не может знать файловую систему вашего сервера (для тестов -f/-d укажите список файлов), RewriteMap, окружение, заданное другими модулями, и порядок, в котором mod_alias и mod_rewrite работают на вашем сервере. Всегда проверяйте реальным запросом: проверка редиректов покажет живую цепочку перенаправлений.
Создать новый файл можно в генераторе .htaccess, а регулярные выражения подробно проверить в тестере регулярных выражений.
Также ищут как: тест правил rewrite, htaccess checker, mod_rewrite тестер, rewriterule тестер.
Инструменты, которые хорошо сочетаются с Тестер .htaccess
- Htpasswd Генератор — Генерируйте строки user:hash для HTTP Basic Authentication в Apache, Nginx, Traefik и Caddy.
- Коды состояния HTTP — Все стандартные коды ответа HTTP простым языком: когда их использовать и как они влияют на SEO.
- Валидатор YAML — Вставьте файл Docker Compose, манифест Kubernetes, workflow GitHub Actions или любой YAML, чтобы найти ошибку, поймать типичные ловушки и получить аккуратно отформатированную версию.
- Генератор YAML для Kubernetes — Укажите имя приложения, образ и порт, и вы получите готовый к продакшену YAML для Kubernetes: Deployment с пробами, лимитами ресурсов и защищённым security context, а также выбранные вами Service, Ingress с TLS, ConfigMap, Secret и HorizontalPodAutoscaler — всё в одном файле, готовом для kubectl apply.
Часто задаваемые вопросы
Как найти строку, которая вызывает ошибку 500?
Почему моё правило RewriteRule ^/page$ никогда не срабатывает?
^page$ вместо ^/page$.