fastcgi_cache: похоже на баг: если Expires очень большой (например, 0x7FF00000), кэширование отключается

Igor Sysoev is at rambler-co.ru
Thu Oct 15 14:56:44 MSD 2009


On Thu, Oct 15, 2009 at 01:43:10PM +0400, Dmitry Koterov wrote:

> Имею в PHP-коде вот такое:
> 
>         $this->_header("Expires: " . gmdate("D, d M Y H:i:s", *0x7F000000*)
> . " GMT");
> 
> В этом случае все кэшируется нормально. Стоит только поменять на
> 
>         $this->_header("Expires: " . gmdate("D, d M Y H:i:s", *0x7FF00000*)
> . " GMT");
> 
> (вместо 0x7F000000 поставить 0x7FF00000, добавив одну буковку F, т.е.
> указать время чуть более в будущем) - и все, уже кэш-файлы не создаются.
> 
> В конфиге nginx примерно следующее:
> 
>     fastcgi_cache merge;
>     fastcgi_cache_valid 200 304 404 240h;
>     fastcgi_cache_key
> "$request_method|$http_if_modified_since|$http_if_none_match|$host|$request_uri";
> 
> nginx/0.7.62. Похоже на баг или какую-то сильно недокументированную
> особенность.

А что показывает "uname -prs" ?
nginx не понимает время >= 2038 года на платформах с 32-битным time_t.


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





More information about the nginx-ru mailing list