Несколько вопросов

greenh greenh на gmail.com
Пн Мар 28 20:24:19 MSD 2011


Извиние за ламерство, но что то я не соображу, как бы это сделать
Ситуация такая: Пришел к нам ДДОС
По ряду причин отбиваться фаерволом не полуается, по этому я сконструировал
во такой конфиг
--------------------------------------------------------------
fastcgi_cache_path /home/pills/nginx-cache levels= keys_zone=wholepage:1m;
server {
listen *:80;
server_name serv;
root /home/pills/www;
index  index.php;
limit_conn   lconn  5;
#Пускаем только американцев и тех, кого нет в базе..
set $allow_from "";
 if ($geoip_country_code !~ "US|") { set $allow_from A; }
if ($remote_addr !~
"79.171.127.56|193.178.250.242|46.98.0.222|46.118.243.109|66.176.74.135|46.118.193.187|46.118.*|^178.12|109.86.254.199|77.247.30.161|67.191.36.185|98.203.126.64")
{ set $allow_from "${allow_from}B"; }
 if ($allow_from = AB) {
 return 444;
 }


location ~ index.php$ {fastcgi_pass unix:/home/pills/run/fastcgi.sock;
#Проверяем куку, если нет - ставим и редиректим на индекс
 if ($cookie_BAN !~* "secret2$")
   {
       add_header Set-Cookie "ban=secret2";
       rewrite ^(.*)$ http://lida-pills.com/index.php  redirect;
       break;
   }
       fastcgi_index index.php;
       fastcgi_param   PHPRC "/home/pills/php";
       fastcgi_param SCRIPT_FILENAME /home/pills/www$fastcgi_script_name;
       include fastcgi_params;
       set $do_not_cache 0;
       if ($request_uri ~* shopping_cart=yes) {
           set $do_not_cache 1;
       }
       fastcgi_cache_bypass $do_not_cache;
       fastcgi_no_cache $do_not_cache;
       fastcgi_cache wholepage;
       fastcgi_cache_valid 200 5m;
       fastcgi_cache_key
"$request_method|$http_if_modified_since|$http_if_none_match|$host|$request_uri";
       fastcgi_hide_header "Set-Cookie";
       fastcgi_ignore_headers "Cache-Control" "Expires";

}
}
--------------------------------------------------------------
При ближайшем рассмотрении выяснилось что после редиректа (при отсутсвии
куки) все равно выполняется передача запроса на fastcgi
Первый вопрос - как бы это предотвратить
Второй вопрос - подскажите плз, в чем может быть ошибка, но в какой то
момент перестало работать кеширование. Видно это как минимум в том, что в
кеш-папке перестали появляться файлы кеша и возросла нагрузка.
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20110328/5ef9a4fd/attachment.html>


Подробная информация о списке рассылки nginx-ru