#apache #.htaccess
#apache #.htaccess
Вопрос:
Как я мог бы изменить
RedirectMatch ^/?folder/(.*) https://elsewhere.com/abc.php?var=1amp;d=$1
добавить исключение, чтобы, если адресом была папка / принтер, он не перенаправлял, но все остальное перенаправляло?
Ответ №1:
RewriteEngine On
RewriteRule !^/?folder/printer/
приведенный выше (!) ваш RedirectMatch
должен сделать свое дело.
Кроме того, взгляните на этот пост
Комментарии:
1. В моей конфигурации Apache в настоящее время возникла некоторая проблема с RewriteRule, который отлаживается на моем хостинге. В то же время я не могу использовать RewriteRule, но я могу использовать перенаправление и RedirectMatch. Есть ли способ реализовать это с помощью RedirectMatch — предпочтительно в этом однострочном операторе?
2. @lioman Хорошо, я понял… На самом деле я довольно плох в регулярных выражениях, но это должно быть что-то вроде этого:
RedirectMatch ^/?folder/((?!printer$).*) https://elsewhere.com/abc.php?var=1amp;d=$1
— Попробуйте несколько вариантов (например, добавив косую черту после принтера или удалив$
там), и я надеюсь, что это поможет.