nginx-0.7.59 - WIN

Igor Sysoev is at rambler-co.ru
Fri May 29 15:41:02 MSD 2009


On Thu, May 28, 2009 at 01:24:31AM +0400, Владимир Чернов wrote:

> Добрый день.
> Прошу прощения за навязчивость.
> 
> Ситуация такая, стоит удаленный бэкенд сервер (считаем медленный канал).
> Операционка win (так получилось).
> Фронт-енд NGINX -0.7.59
> Задача проксировать с кешированием большое кол-во статичного контента. (на боевом сервере не удалось победить, пришлось собрать стенд на домашнем компе и проводить тестирование)
> 
> в конфиге пишу:
> ------------------------------------------------------------------------------------------------------------
> worker_processes  1;
> events {
>     worker_connections  1024;
> }
> 
> http {
>     include       mime.types;
>     default_type  application/octet-stream;
> 
>     sendfile        on;
> 
>     keepalive_timeout  65;
>     proxy_cache_path  proxy levels=1 keys_zone=one:60m inactive=1d ;
> 
>     server {
>         listen       82;
> 
> location / {
>                 proxy_pass        http://boba.ru/;
>                 proxy_set_header  Host        boba.ru;
>                 proxy_cache one;
> 
>                 proxy_cache_valid  200 302  30m;
>                 proxy_cache_valid  404      1m;
> 
>                 proxy_cache_min_uses 1;
> 
>                 proxy_cache_use_stale error timeout invalid_header http_500 http_502 http_503 http_504;
>                 access_log logs/db-proxy-access.log;
>                 proxy_store   on;
>                 }
>     }
> }
> ------------------------------------------------------------------------------------------------------------
> 
> Проксирование работает а вот кеширования никак. вот куски логов:
> Аксесс-лог
> 192.168.131.131 - - [25/May/2009:00:03:16 +0400] "GET /images/mainTitle.jpg HTTP/1.1" 200 57854 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
> 192.168.131.131 - - [25/May/2009:00:03:18 +0400] "GET /images/mainTitle.jpg HTTP/1.1" 200 57854 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
> 
> две попытки скачать картинку обе удачные
> а вот еррор-лог
> 
> 2009/05/25 00:03:16 [crit] 216#1980: *1 DeleteFile() "C:\nginx/temp/proxy_temp/0/00/0000000000" failed (5: Отказано в доступе) while reading upstream, client: 192.168.131.131, server: administ-645974, request: "GET /images/mainTitle.jpg HTTP/1.1", upstream: "http://213.234.193.34:80/images/mainTitle.jpg", host: "administ-645974:82"
> 2009/05/25 00:03:16 [crit] 216#1980: *1 MoveFile() "C:\nginx/temp/proxy_temp/0/00/0000000000" to "C:\nginx/proxy/7/69204095d2c2f3d76f7b21de52a4a327" failed (5: Отказано в доступе) while reading upstream, client: 192.168.131.131, server: administ-645974, request: "GET /images/mainTitle.jpg HTTP/1.1", upstream: "http://213.234.193.34:80/images/mainTitle.jpg", host: "administ-645974:82"
> 2009/05/25 00:03:18 [crit] 216#1980: *1 DeleteFile() "C:\nginx/temp/proxy_temp/1/00/0000000001" failed (5: Отказано в доступе) while reading upstream, client: 192.168.131.131, server: administ-645974, request: "GET /images/mainTitle.jpg HTTP/1.1", upstream: "http://213.234.193.34:80/images/mainTitle.jpg", host: "administ-645974:82"
> 2009/05/25 00:03:18 [crit] 216#1980: *1 MoveFile() "C:\nginx/temp/proxy_temp/1/00/0000000001" to "C:\nginx/proxy/7/69204095d2c2f3d76f7b21de52a4a327" failed (5: Отказано в доступе) while reading upstream, client: 192.168.131.131, server: administ-645974, request: "GET /images/mainTitle.jpg HTTP/1.1", upstream: "http://213.234.193.34:80/images/mainTitle.jpg", host: "administ-645974:82"
> 
> тоесть явно он пытался со временного кеш лога перенести в постоянный, но ему это не удалось.
> Процесс запушен под администратором, ограничений никаких нет. Папки: C:\nginx/temp/proxy_temp/1/00/ есть на диске папки C:\nginx/proxy/7/ нет, но нет только папки с номером 7 а сама C:\nginx/proxy/ есть.
> Операционка WinXP SP3 (32 bit)
> 
> Этот-же конфиг, вызывает GPF на операционке Windows2008 (64bit) и на Windows2008 (32bit)
> Стоит убрать строку:
>                 proxy_cache_path  proxy levels=1 keys_zone=one:60m inactive=1d ;
> ну и собственно все что относится к кешированию
>                 proxy_cache one; и т.д.
> 
> Как все на Windows2008 начинает работать но в логах вылезает вторая проблема:
> 
> 2009/05/25 00:27:06 [crit] 3012#3696: *1 DeleteFile() failed (5: Access is denied) while reading upstream, client: 10.1.1.2, server: boba-server, request: "GET / HTTP/1.1", upstream: "http://213.234.193.34:80/", host: "boba-server:82"
> 2009/05/25 00:27:06 [crit] 3012#3696: *1 MoveFile() failed (5: Access is denied) while reading upstream, client: 10.1.1.2, server: boba-server, request: "GET / HTTP/1.1", upstream: "http://213.234.193.34:80/", host: "boba-server:82"
> 2009/05/25 00:27:07 [crit] 3012#3696: *4 MoveFile() "C:\nginx/temp/proxy_temp/3/00/0000000003" to "C:\nginx/html/knopka/boba88x31stat.gif" failed (3: The system cannot find the path specified) while reading upstream, client: 10.1.1.2, server: boba-server, request: "GET /knopka/boba88x31stat.gif HTTP/1.1", upstream: "http://213.234.193.34:80/knopka/boba88x31stat.gif", host: "boba-server:82", referrer: "http://boba-server:82/"
> 2009/05/25 00:27:07 [crit] 3012#3696: *1 MoveFile() "C:\nginx/temp/proxy_temp/2/00/0000000002" to "C:\nginx/html/images/mainTitle.jpg" failed (3: The system cannot find the path specified) while reading upstream, client: 10.1.1.2, server: boba-server, request: "GET /images/mainTitle.jpg HTTP/1.1", upstream: "http://213.234.193.34:80/images/mainTitle.jpg", host: "boba-server:82", referrer: "http://boba-server:82/"
> 2009/05/25 00:27:08 [crit] 3012#3696: *4 MoveFile() "C:\nginx/temp/proxy_temp/4/00/0000000004" to "C:\nginx/html/images/leftStripe.gif" failed (3: The system cannot find the path specified) while reading upstream, client: 10.1.1.2, server: boba-server, request: "GET /images/leftStripe.gif HTTP/1.1", upstream: "http://213.234.193.34:80/images/leftStripe.gif", host: "boba-server:82", referrer: "http://boba-server:82/"
> 2009/05/25 00:27:08 [crit] 3012#3696: *1 MoveFile() "C:\nginx/temp/proxy_temp/5/00/0000000005" to "C:\nginx/html/images/rightStripe.gif" failed (3: The system cannot find the path specified) while reading upstream, client: 10.1.1.2, server: boba-server, request: "GET /images/rightStripe.gif HTTP/1.1", upstream: "http://213.234.193.34:80/images/rightStripe.gif", host: "boba-server:82", referrer: "http://boba-server:82/"
> 
> 
> как видно тут всплывает проблема работы с  
>                 proxy_store   on;
> И опять папки во временной дирректории создаются, а файлов нет.
> 
> Рад буду помощи, готов помочь в тестировании.

proxy_store и proxy_cache нельзя использовать вместе. Новые версии будут
ругаться на такую комбинацию. Сборка, в которой исправлено кэширование
на 32-битной плафторме:

http://sysoev.ru/tmp/nginx-0.8.0a.zip

В этой сборке также есть отладочная информация. Нужно запустить бинарник
с nginx.pdb на 64-битной винде, получить crashdump Dr.Watson'а и прислать
его мне или выложить куда-нибудь, если он будет достаточно большой.


-- 
Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list