ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Долгий редирект при включенном keep-alive


  • To: nginx-ru@xxxxxxxxx
  • Subject: Долгий редирект при включенном keep-alive
  • From: Administrator <server@xxxxxxxxxxx>
  • Date: Sun, 18 Feb 2007 15:50:05 +0300
  • Organization: Edinorog

Добрый день.

Настроен nginx-0.5.12+apache FreeBSD 4.11.
При запросе несуществующего адреса, например, без www происходит редирект 
апачем помощью php.

header('HTTP/1.1 301 Moved Permanently');
header('Location: http://www.test.com/');
exit();

Так вот, что IE, что FireFox честно висят при таком редиректе и ждут окончания 
keepalive. Сейчас стоит 7 секунд. Поставишь его в 60 секунд, то 60 и будут 
ждать, а потом пойдут по новой ссылке. Опера в отличие от этих двух друзей 
редиректиться сразу.

Если поставить keepalive_timeout в 0, то редирект срабатывает мгновенно.

Где ошибка и как вылечить?

В настройках nginx стоит
user web web;
worker_processes 4;
events {
    worker_connections  2048;
    use kqueue;
}

http {
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;

    keepalive_timeout 7 5;

    client_header_timeout 60;
    client_body_timeout 60;

    send_timeout 60;

    client_header_buffer_size 1k;
    large_client_header_buffers 8 4k;

    server {
        listen ...
        server_name ...

        proxy_redirect off;
        port_in_redirect off;

        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_connect_timeout 90;
        proxy_send_timeout 90;
        proxy_read_timeout 90;
        proxy_send_lowat 12000;

        proxy_buffering on;
        proxy_buffer_size 16k;
        proxy_buffers 54 32k;
        proxy_busy_buffers_size 64k;
        proxy_temp_file_write_size 64k;

        location / {
            client_max_body_size 10m;
            client_body_buffer_size 128k;

            proxy_pass http://127.0.0.1:8000;
        }
    }
}

-- 
С уважением,
 
Системный администратор
Дизайн-студия "Единорог"
Тел: (495) 225-44-57
E-mail: server@xxxxxxxxxxx




 




Copyright © Lexa Software, 1996-2009.