несколько перенаправлений в .htaccess файле - выполняются сначала один

Я пытаюсь использовать .htaccess для перенаправления единственной страницы в механизме выражения к странице другого сайта. Наш .htaccess файл имеет тонну другого переписывать правила и переписать условия гарантировать, что сайт механизма выражения работает эффективно.

У меня есть этот RedirectMatch наверху .htaccess файла.

RedirectMatch (?i)^/my-page https://www.differentsite.com/my-page

Перенаправление отправляет на новый сайт хорошо за исключением, он добавляет дополнительное'?/my-page' в конце моего URL на целевом сервере. Таким образом, это проникает как "https://www.differentsite.com/my-page?/my-page"

Я полагаю, что это из-за некоторых других правил ниже этого в .htaccess добавлении/попытке файлов к некоторым дополнительным частям URL.

Как я удостоверяюсь, что только первая строка выполняется с помощью .htaccess?

Кроме того, есть ли способ, которым я могу протестировать то, что точно .htaccess URL пытается отправить, прежде чем он пойдет через некоторый тип доступа/файла журнала?

Спасибо!

0
задан 12 March 2019 в 11:54

2 ответа

Попытайтесь добавить [L] флаг в конце строки. Думайте, мог бы помочь.

RedirectMatch (?i)^/my-page https://www.differentsite.com/my-page [L]

Больше о флагах в .htaccess здесь

0
ответ дан 26 October 2019 в 01:31

@atom_n был корректен, что мне был нужен флаг L!

Однако флаг L не работает на RedirectMatch, таким образом, я должен был использовать переписать правило. Заключительное рабочее решение ниже

RewriteCond %{REQUEST_URI} /my-page [NC]
RewriteRule (.*) https://www.differentsite.com/my-page [R=301,L]

Это работало отлично после этого.

0
ответ дан 26 October 2019 в 01:31

Другие вопросы по тегам:

Похожие вопросы: