. В первый раз, используя .htaccess, поэтому я прихожу сюда, чтобы получить небольшую помощь, поскольку Интернет - это не тот файл с информацией (или я просто не найдите их: /).
Итак, идея состоит в том, что я хочу перенаправить ссылку, заканчивающуюся / 2 /
или / 3 /
... (номер), на ] error410
страница.
Итак, я придумал это регулярное выражение, которое хорошо работает ^ (. *?) \ / (?! (?: 404 | 410) $) \ d + $
И если Я понимаю, как это работает. Это правильное решение:
RewriteCond %{QUERY_STRING} ^(.*?)\/(?!(?:404|410)$)\d+$ [NC]
RewriteRule . - [G]
Как вы думаете, это сработает или нет? Я не хочу играть в ученика волшебника ..
Это не сработает. Вы тестируете шаблон на наличие переменной %{QUERY_STRING}
. В этой переменной хранится не URI содержимое, а параметры запроса, отправленного с помощью GET
или POST
.
Для отправки статуса GONE
используйте следующее правило:
RewriteEngine On
RewriteRule ^\d+/?$ - [G]