Re: Как отдать файл с другого сервера?

Alexey Kovyrin alexey at kovyrin.net
Thu Mar 20 02:30:53 MSK 2008


А проще использовать инструменты для того, для чего они придуманы, а
не городить костыли. Use squid, Luke (c) :-)

2008/3/19 Alex Vorona <voron at amhost.net>:
> Евгений Васильев пишет:
>
> > Здравствуйте, Alex.
>  >
>  > Вы писали 19 марта 2008 г., 17:50:45:
>
> > AV> http://sysoev.ru/nginx/docs/http/ngx_http_proxy_module.html#proxy_store
>  >
>  > Я так понял что в этом случае nginx будет сохранять все файлы, пока
>  > диск не переполнится.
>  > А нельзя ли там какнить указать лимит кэша? скажем 10 гиг.
>
>  если позволяют ресурсы, включить atime, отключить open_file_cache и файлы, к
>  которым не было обращений > N дней, удалять из кэша например через find
>
> > и более старый файл переписывается новым.
>  а вот это уже сложнее будет похоже. Как вариант отдавать download-запрос на
>  fastcgi/http-бэкенд, который будет делать http HEAD запрос на win-сервер и
>  сверять mtime локального файла и Last-Modified и, в случае если на win-сервере
>  файл новее, удалять его из кэша nginx и делать на него X-Accel-Redirect,
>  попадающий в location /fetch/. Если же файлы одинаковые по времени модификации
>  либо другому нужному критерию, бэкенд выдаёт X-Accel-Redirect на location
>  images, который отдаёт файл из кэша. Либо бэкенд выдаёт всегда одинаковый XAR на
>  images, в котором срабатывает или не срабатывает редирект по 404-й ошибке на
>  fetch, в зависимости от того, удалил бэкенд файл с диска или нет.
>
>
>



-- 
Alexey Kovyrin
http://kovyrin.info/


More information about the nginx-ru mailing list