Welcome! Log In Create A New Profile

Advanced

Запрет адреса по символу

Posted by Bambini 
Запрет адреса по символу
May 30, 2012 05:09PM
Здравствуйте,
сталкнулся с такой проблемой

при вводе любого адреса с "?" после слеша, например: site.com/?word
сайт возвращает глувную


Можно ли через конфиг nginx запретить все адреса /?

В результатах поиска появилось десятков таких псевдо страниц моего сайта:

site.com/?porn
site.com/?porn-with-animal
site.com/?sex-xxl и т.д.

Заранее спасибо за помощь.
Re: Запрет адреса по символу
May 31, 2012 04:08AM
Как-то так

if ($uri ~ ./?/.) {
return 403;
}
Re: Запрет адреса по символу
May 31, 2012 08:12AM
К сожалению этот вариат не работает :(
Re: Запрет адреса по символу
June 01, 2012 08:08PM
как я понял, спасение утопающих - дело рук самих утопающих :))

Нашел решение:

if ($args ~ "."){
set $rule_0 1$rule_0;
}
if ($rule_0 = "1"){
rewrite ^/(index.(php¦html?))?$ /404 last;
}

################################
404 у меня отдельная страница "Error 404"
но я сделал проще:
################################

if ($args ~ "."){
set $rule_0 1$rule_0;
}
if ($rule_0 = "1"){
return 403;
}
Re: Запрет адреса по символу
June 01, 2012 10:33PM
кому интересно, те же грабли только для .htaccess

RewriteCond %{QUERY_STRING} .
RewriteRule ^(index\.(php¦html?))?$ /404 [L]



;-)
Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 56
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready