Перейти к основному содержанию

Тестер .htaccess

API reference

Проверьте, как набор директив Apache .htaccess RewriteRule/RewriteCond и Redirect/RedirectMatch обрабатывает тестовый URL — увидьте итоговый редирект, внутренний rewrite или пропуск запроса, с пошаговой трассировкой директив.

Ввод

Путь вида /article/42, при необходимости с строкой запроса. Используются только путь и строка запроса.

Имитируемый запрос

Вывод

Результат
СвойствоЗначение
No data yet

Трассировка директив по порядку

Результат
СтрокаДирективаПравилоРезультат
No data yet
Это было полезно?

Другие способы использовать этот инструмент

REST API

curl -X POST https://api.iotools.cloud/v1/tool/htaccess-tester \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "htaccessRules": "RewriteEngine On\n\n# Force HTTPS\nRewriteCond %{HT…",
    "testUrl": "/article/42",
    "httpsEnabled": "",
    "httpHost": "example.com"
  }'

Подставьте свой собственный ключ из аккаунта. Поля инструмента — это тело запроса, без обёртки.

Спросите у ИИ-агента

Use the IOTools `htaccess-tester` tool (.htaccess Tester) on this input:

YOUR_INPUT_HERE

Вставьте это любому агенту, подключённому к MCP-серверу IOTools, и добавьте свой ввод.

Виджет для встраивания

<iframe
  src="https://iotools.cloud/embed/htaccess-tester/"
  width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
  title="Тестер .htaccess — iotools.cloud"
  sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
  allow="clipboard-write"
  style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>

Вставьте это на свою страницу — бесплатно, без ключа, нужна лишь обратная ссылка.

Стоимость вызова API/MCPОт 5 кредитов
Нужно больше кредитов?Посмотреть тарифы

Также доступно через

Руководства

Что делает этот инструмент

Файлы Apache .htaccess управляют перезаписью URL и редиректами через mod_rewrite (RewriteEngine, RewriteCond, RewriteRule) и директивы mod_alias (Redirect, RedirectMatch, RedirectPermanent, RedirectTemp). Правильно составить цепочку перезаписи, просто разбирая регулярные выражения глазами, трудно: условие, которое никогда не срабатывает, подстановка с неверной обратной ссылкой или пропущенный флаг [L] могут незаметно сломать редирект, который вы хотели настроить.

Этот инструмент имитирует такое разрешение правил: вставьте директивы, укажите тестовый URL, и он пройдёт по правилам директива за директивой, показав, какое RewriteCond совпало, какое RewriteRule сработало и каков итоговый результат — внешний редирект (с кодом статуса и Location), внутренняя перезапись, 403/410 или пропуск запроса без совпадений.

Как пользоваться

  1. Вставьте директивы перезаписи/редиректа из .htaccess в поле Содержимое .htaccess.
  2. Введите URL / путь для проверки — путь вида /article/42, при необходимости со строкой запроса.
  3. Включите Имитировать HTTPS-запрос и задайте Заголовок Host, если ваши правила ветвятся по %{HTTPS} или %{HTTP_HOST} (типично для правил принудительного HTTPS и канонизации www).
  4. Результат смотрите в строке Результат, а то, как вычислялась каждая директива, — в таблице трассировки под ней.

Работает автоматически при редактировании — нажимать кнопку не нужно.

Что имитируется

  • RewriteEngine On|Off, RewriteBase
  • RewriteCond — регулярное выражение CondPattern (с отрицанием ! и [NC]) и форма точного совпадения =literal, объединённые той же логикой AND/[OR], что и в Apache
  • RewriteRule — сопоставление шаблона (без ведущего слеша, как принято для .htaccess на уровне каталога), флаги NC, L/END, R/R=NNN, F, G, P и QSA, а также раскрытие обратных ссылок %{VAR} / %N / $N
  • Redirect, RedirectMatch, RedirectPermanent, RedirectTemp (mod_alias)

Директивы читаются сверху вниз за один проход. Apache сам начинает сопоставление заново с начала набора правил после неконечной перезаписи (без L); этот инструмент не выполняет повторный цикл, поэтому правило, написанное специально для перехвата уже переписанного URL при втором проходе, здесь не сработает. Большинство типичных цепочек перезаписи (редирект с http, canonicalize-www, преобразование «красивого» URL в строку запроса) от такого поведения не зависят. Проверки существования файла (-f, -d, -s) и лексикографические сравнения в RewriteCond всегда сообщают «не совпало», потому что проверять не по чему — нет ни реальной файловой системы, ни запроса; P (прокси) отображается, но никогда не выполняется.

Частые вопросы

Этот инструмент проверяет мой работающий сервер? Нет — всё выполняется над текстом, который вы вставили, с использованием тестового URL и имитируемых значений Host/HTTPS, которые вы указали. Ничего не запрашивается по сети.

Почему моё RewriteRule не сработало? Посмотрите таблицу трассировки — она показывает результат каждого RewriteCond перед правилом и то, совпал ли сам шаблон правила. Частая причина — ведущий слеш / в шаблоне: шаблоны в контексте .htaccess сопоставляются с путём без ведущего слеша, поэтому ^/article никогда не совпадёт с /article/42 — используйте ^article.

А если нужно просто переформатировать .htaccess, без проверки? Используйте .htaccess Formatter. Чтобы собрать типовые блоки правил (принудительный HTTPS, канонизация www, защита от hotlink, …) из переключателей вместо ручного написания, используйте .htaccess Rule Generator.

Конфиденциальность

Этот инструмент работает полностью в вашем браузере. Содержимое .htaccess и тестовый URL никогда не загружаются на сервер.

htaccessapachemod_rewriterewrite ruleredirecturl rewriteweb serverseo

Нравятся инструменты? Уберите рекламу.

Один платёж навсегда убирает всю рекламу с вашего аккаунта. Без подписки, без слежки.