Re: Ошибка: cache file"FILENAME" has too long header...
Maxim Dounin
mdounin at mdounin.ru
Thu Oct 10 12:31:27 UTC 2013
Hello!
On Thu, Oct 10, 2013 at 01:24:26PM +0400, Батогов Евгений wrote:
> Привет всем.
> Мы используем proxy cache в nginx для кэширования скриншотов телеканалов. Это обычные изображения в jpg.
>
> Но nginx бросает следующую ошибку:
> 2013/10/09 18:52:45 [crit] 20249#0: *571428758 cache file
> "/dev/shm/screenshots/5/be/af8e98d9a99932db76fd5970feef4be5" has too long header, client:
> 10.24.131.7, server: _, request: "GET
>
>
> Вопрос: Каким параметром можно настроить длина заголовка?
Заголовок cache-файла - это ключ кеширования + немного других
метаданных + заголовок ответа бекенда.
Длину загаловка настроить нельзя, можно:
a) повлиять на длины составляющих заголовка, в частности - на
длину ключа и на длину заголовков ответа от бекенда;
б) увеличить размер буфера, используемого для чтения заголовка, с
помощью директивы proxy_buffer_size, описание тут:
http://nginx.org/r/proxy_buffer_size.
Вообще процитированные ошибки должны появляться только в том
случае, если ответ был сохранён с одним значением
proxy_buffer_size, а вернуть его пытаются в location'е с другим
значением. Если вдруг есть основания полагать, что ошибки
возникают в других условиях - имеет смысл поразбираться подробнее,
в частности - посмотреть внимательно на кеш-файлы, возможно они
просто почему-то битые.
--
Maxim Dounin
http://nginx.org/en/donation.html
Подробная информация о списке рассылки nginx-ru