Отрицание нескольких слов (RewriteCond)

Обсуждение любых вопросов связанных с файлами конфигурации .htaccess

Отрицание нескольких слов (RewriteCond)

Сообщение Retrill » Ср мар 30, 2016 3:11 am

Пишу правило, которое должно запретить все "script" в запросе, которые не начинаются на "de", "?" или "&". Получилось что-то вроде:
Код: выделить все
RewriteCond %{THE_REQUEST} (?<!(de|\?|&))script [NC]
RewriteRule ^(.*)$ - [F,L]


Получаем ошибку 500 - ошибка синтаксиса, стало быть. Вот только не пойму, где, вроде все правильно. Как будто не поддерживается перечисление нескольких слов в отрицающей конструкции - с одним словом все работает. Как-то можно это реализовать?
Retrill
 
Сообщений: 3
Зарегистрирован: Ср мар 30, 2016 3:06 am
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0

Сообщение Emilien » Сб апр 02, 2016 9:15 pm

Убрать лишние скобки вокруг "de|\?|&"
Код: выделить все
RewriteCond %{THE_REQUEST} (?<!de|\?|&)script [NC]
RewriteRule ^(.*)$ - [F,L]
Emilien
Мл. Сержант
 
Сообщений: 51
Зарегистрирован: Чт дек 10, 2015 3:35 am
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0


Вернуться в Htaccess

Кто сейчас на форуме

Зарегистрированные пользователи: YandexBot

cron