0 Пользователей и 1 Гость просматривают эту тему.
  • 1 Ответов
  • 222 Просмотров
*

andreytemn

  • Новичок
  • 5
  • 0
Здравствуйте, возникла такая потребность - требуется перебрасывать запросы типа "<имя сайта>/?asdf", т.е., в которых после "?" идет бессвязный текст (имя параметра без значения), на страницу 404. В запросе может присутствовать или отсутствовать "=", но если после него нет никакого текста, то он не должен обрабатываться. Делаю через htaccess. Пока что он выглядит как-то так:
Код
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=http:// [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=(\.\.//?)+ [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [OR]
#отключить обработку запросов
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_] [NC]
RewriteRule ^(.*)$ index.php [R=404,L]

Но так режутся вообще все запросы с параметрами и перестаёт работать админка. ЧЯДНТ?
Заранее спасибо.
*

andreytemn

  • Новичок
  • 5
  • 0
По сути, поставленную задачу может выполнить следующий код:

Код
RewriteEngine On
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=http:// [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=(\.\.//?)+ [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [OR]
RewriteCond %{QUERY_STRING} ^[a-zA-Z0-9_]+$ [OR]
RewriteCond %{QUERY_STRING} ^[a-zA-Z0-9_]+=$ [NC]
RewriteRule ^(.*)$ index.php [R=404,F]

Правда, теперь не работает подгрузка скриптов в некоторых плагинах, так что лучше так не делать. Большинство эксплоитов, связанных с параметрами запроса, режется следующим кодом, думаю, им же можно и ограничиться:

Код
RewriteEngine On
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=http:// [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=(\.\.//?)+ [OR]
RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [NC]
RewriteRule ^(.*)$ index.php [R=404,F]
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не могу изменить позицию в шаблоне (смотрю через Firebug)

Автор Ханиган

Ответов: 11
Просмотров: 70
Последний ответ 25.09.2017, 14:53:54
от Ханиган
Не рабатает редирект после отправки формы модуля

Автор alpha_ru

Ответов: 5
Просмотров: 89
Последний ответ 24.09.2017, 20:36:22
от robert
Настройка почты smtp через Яндекс

Автор Abikon

Ответов: 3
Просмотров: 1182
Последний ответ 08.09.2017, 13:44:39
от jesus
Как сделать редирект с одной страницы на другую?

Автор maximka21reg

Ответов: 4
Просмотров: 467
Последний ответ 05.09.2017, 10:11:31
от SuschnosT
Блокировка IP стран в HTACCESS

Автор IgorParmenov

Ответов: 20
Просмотров: 815
Последний ответ 25.08.2017, 08:42:04
от dmitry_stas