Welcome! Log In Create A New Profile

Advanced

Re: не работает proxy_cache

July 20, 2011 05:38AM
On Jul 20, 2011, at 12:56 PM, Maxim Dounin wrote:

> Hello!
>
> On Wed, Jul 20, 2011 at 12:24:59PM +0400, Евгений Торопов wrote:
>
>> Добрый день,
>>
>> Не могу понять, что мешает кэшированию.
>>
>> Кэш-конфиг:
>>
>> proxy_cache_path /opt/local/nginx/cache levels=1:2 keys_zone=sup:32m max_size=1024m inactive=1h;
>>
>> proxy_cache sup;
>> proxy_cache_valid 1h;
>>
>> proxy_cache_key "$host$request_uri";
>> proxy_cache_methods POST;
>>
>>
>>
>> Отрывок дебаг лога:
>
> [...]
>
>> 2011/07/20 12:02:20 [debug] 99556#0: *15 http proxy status 200 "200 OK"
>> 2011/07/20 12:02:20 [debug] 99556#0: *15 http proxy header: "Date: Wed, 20 Jul 2011 08:02:16 GMT"
>> 2011/07/20 12:02:20 [debug] 99556#0: *15 http proxy header: "Server: Apache/2.0.52 (Red Hat)"
>> 2011/07/20 12:02:20 [debug] 99556#0: *15 http proxy header: "Content-Encoding: deflate"
>> 2011/07/20 12:02:20 [debug] 99556#0: *15 http proxy header: "Vary: Accept-Encoding"
>> 2011/07/20 12:02:20 [debug] 99556#0: *15 http proxy header: "Set-Cookie: JSESSIONID=avIghzWKEQxa; path=/"
>> 2011/07/20 12:02:20 [debug] 99556#0: *15 http proxy header: "Connection: close"
>> 2011/07/20 12:02:20 [debug] 99556#0: *15 http proxy header: "Content-Type: text/xml; charset=ISO-8859-1"
>> 2011/07/20 12:02:20 [debug] 99556#0: *15 http proxy header done
>
> Как минимум - ставится сессионная кука, nginx такой ответ
> кешировать не будет, если его специально не попросить.
>
> Попросить кешировать (и спрятать куки, чтобы не выставлять их всем
> клиентам из кеша) можно так:
>
> proxy_ignore_headers Set-Cookie;
> proxy_hide_header Set-Cookie;
>
> Ещё я бы рекомендовал либо добавить в ключ кеширования
> Accept-Encoding ($http_accept_encoding), либо выключить сжатие на
> бекендах. Сейчас nginx не понимает Vary, и в вашем случае в кеш
> ляжет ответ сжатый deflate'ом, что может не устроить браузер,
> который потом будет получать ответ из кеша. Простейший способ
> выключить сжатие - просто не пропускать на бекенд заголовок
> Accept-Encoding, как-то так:
>
> proxy_set_header Accept-Encoding "";
>
> Maxim Dounin
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://nginx.org/mailman/listinfo/nginx-ru

Большое спасибо, заработало.

Евгений
jt@aaanet.ru


_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Тюнинг nginx

xganet July 01, 2011 10:54PM

Re: Тюнинг nginx

Un Lexx July 02, 2011 03:36AM

Re: Тюнинг nginx

sergey.kobzar July 02, 2011 09:04AM

Re: Тюнинг nginx

Andrey N. Oktyabrski July 17, 2011 07:24AM

Re: Тюнинг nginx

sergey.kobzar July 19, 2011 01:08PM

не работает proxy_cache

Eugene Toropov July 20, 2011 04:26AM

Re: не работает proxy_cache

Maxim Dounin July 20, 2011 04:58AM

Re: не работает proxy_cache

Eugene Toropov July 20, 2011 05:38AM

Re: Тюнинг nginx

xganet July 07, 2011 10:41PM

Re: Тюнинг nginx

xganet July 08, 2011 02:32AM

Re: Тюнинг nginx

Maxim Dounin July 11, 2011 09:02AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 315
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready