Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: fastcgi_cache: похоже на баг: если Expires очень большой (например, 0 x7FF00000), кэширование отключается
On Thu, Oct 15, 2009 at 03:38:02PM +0400, Maxim Dounin wrote:
> Hello!
>
> On Thu, Oct 15, 2009 at 02:56:44PM +0400, Igor Sysoev wrote:
>
> > 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.
>
> А как насчёт патча? Или я что-то упустил из виду?
Изначально я считал, что эти пара недель 2038 года никому не нужны.
Но похоже это не так. Другой патч.
--
Игорь Сысоев
http://sysoev.ru
Attachment:
patch.2038.txt
Description: Binary data
|