Назад | Перейти на главную страницу

Регулярное выражение не работает в .htaccess

Я пытаюсь ограничить количество символов, которые можно использовать в URI запроса, используя:

RewriteEngine on

RewriteCond% {REQUEST_URI}! ^ ([A-z0-9: / \. \ _ \ -]) [NC]

RewriteRule ^. * - [F, L]

Почему-то не работает. Любые идеи?

Спасибо!

Хороший вопрос. Хороший способ защиты от XSS (межсайтовый скриптинг).

Это решение:

            RewriteEngine on
            RewriteCond %{REQUEST_URI} [^a-z0-9\_\:\/\.\-] [NC]
            RewriteRule () - [F,L]

Более короткий эквивалент:

            RewriteEngine on
            RewriteRule [^a-z0-9\_\:\/\.\-] - [F,L]