Доброго времени
суток,
Столкнулся с проблемой фунционирования связки
nginx/0.5.20 + Apache/2.0.59 + PHP 4.4.7 на Solaris 10 X64. Проблема состоит
в том, что при отдаче в броузер nginx не отдает полностью страницу, режет ее
близко к концу.
При этом сам
апач отдает все без проблем, если запросы направлять на него, минуя nginx.
Проблему
удалось частично решить путем установки в php.ini флага "zlib.output_compression
= On", это позволило броузеру получать страницу нормально, но если внутри
страницы есть код на _javascript_, который сам что то подгружает с сервера, то он
тоже получает не полные данные, обрезанные в конце. Проверялось на нескольких
версиях IE, Firefox. Похоже на то, что где то бьется header "Content-Length",
возможно проблема в PHP.
Подскажите пожайлуста в какую сторону копать?
Доверяет ли nginx header'у "Content-Length" полученному от апача, изменяет ли он
его при отдаче клиенту?
Конфигурация
nginx: -->snip<-- user webservd webservd; worker_processes
1; worker_rlimit_nofile
10240; pid
logs/nginx.pid; events { worker_connections
8192; use /dev/poll; } http {
include conf/mime.types; default_type
application/octet-stream;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
output_buffers 8 64k; postpone_output
1460; keepalive_timeout 75 20;
client_header_timeout 30;
client_body_timeout 60;
send_timeout
120; ignore_invalid_headers
on; limit_zone one $binary_remote_addr
15m; server
{
listen
80; server_name calend.ru
*.calend.ru; access_log /dev/null;
error_log /dev/null; # Main
location location /
{
default_type
text/html;
ssi
off;
proxy_pass http://84.204.96.130:8088; #
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;
proxy_set_header REQUEST_METHOD
$request_method;
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
128 4k;
proxy_busy_buffers_size
64k;
proxy_temp_file_write_size
64k;
proxy_buffering
on;
proxy_max_temp_file_size
0; } # Static files
location location
~* ^.+.(htm|html|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|mp3|rtf|js)$
{ ssi
off;
root
/data/sites/calend.ru/htdocs;
} # Image files
location location ~*
^.+.(jpg|jpeg|gif|png|ico|bmp)$
{
root
/data/sites/calend.ru/htdocs;
expires
1h;
} } -->snip<--
-- Kind regards, Konstantin A.
Mikhailov
|