Страница 1 из 1

apache2 зависает при скачивании файла

Добавлено: 24 фев 2009, 16:26
dark-al
Приветствую всех!
Существует проблема с apache2, при скачивании файлов с сайта, процессы апача тупо зависают (статус W). Стоит связка nginx+apache2, на сайте двиг DLE.
Вот скрин как это выглядит через веб статистику (здесь). Что делать даже не знаю, уже 2 недели так. Именно когда идет скачивание файла, то даже на сайт зайди не возможно. Заранее всех благодарю!

Вот кусок конфига апача:

Код: Выделить всё

Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15

<IfModule mpm_prefork_module>
    StartServers          5
    MinSpareServers       5
    MaxSpareServers      10
    MaxClients           30
    MaxRequestsPerChild  1000
</IfModule>
Вот кусок nginx:

Код: Выделить всё

server { 
listen 80; 
server_name site.ru www.site.ru; 
access_log /var/log/nginx/access.log main;

location / {

proxy_pass http://127.0.0.1:8080/; 
proxy_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;
 
client_max_body_size 10m; 
client_body_buffer_size 128k; 

proxy_connect_timeout 90; 
proxy_send_timeout 90; 
proxy_read_timeout 90; 

proxy_buffer_size 4k; 
proxy_buffers 4 32k; 
proxy_busy_buffers_size 64k; 
proxy_temp_file_write_size 64k; 
}
location ~* ^.+\.(htm|html|jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|wav|bmp|rtf|js|avi|mp3|mkv)$ { 
root /home/web/site.ru;
}
}

Re: apache2 зависает при скачивании файла

Добавлено: 24 фев 2009, 21:57
Llama
Если у вас апач отдает статику, то на кой вам нуже nginx - для красоты ?

Re: apache2 зависает при скачивании файла

Добавлено: 24 фев 2009, 23:05
dark-al
А где я написал что апач отдает статику? Как nginx, я же и конфиг привел. Апач висит на 8080 порту. Дело в том что когда идет скачка файла запрос идет непосредственно к скрипту download.php?id=1 , может поэтому висяк. В чем проблема не знаю, и куда копать тоже не знаю =(

Re: apache2 зависает при скачивании файла

Добавлено: 25 фев 2009, 02:03
leave
Я вот понять не могу, откуда выросло понятие "зависают"? Ведь написано же английским по белому на страничке apache-status, что W=sending reply.
Что еще надо-то? Я вот по скриншоту вижу, что скачка идет в *надцать потоков, а у вас при этом

Код: Выделить всё

    MaxClients           30
P.S. Llama прав: какой смысл ставить нгинкс и отдавать статику апачем (ваше download.php?id=6 суть отдача статики). Тут надо переписывать модуль даунлоада и давать директ линк на файлы.

Re: apache2 зависает при скачивании файла

Добавлено: 25 фев 2009, 06:41
Berserker
leave, не факт, что W это уже идёт отдача. Может, скрипт решил что-то проверить , куда-то приконнектиться, а оно зафайрволено, перед тем как отдавать, вот и висит.