root@www2:~# nginx -V nginx: nginx version: nginx/1.0.0
также nginx тихо перестает кешировать если бекенд дает
proxy_ignore_headers Cache-Control Set-Cookie;
те по дефолту он не выкидывает а перестает кешировать смотря в заголовки, почему этого нет в доке :(
18.05.2011, в 14:09, Alexander Petrovsky написал(а):
18 мая 2011 г. 18:04 пользователь Валера Харсеко <vharseko@xxxxxxxxx> написал:
прям в точку, надо обязательно добавить в доку
proxy_ignore_headers Set-Cookie;
и все пошло
ну и
proxy_hide_header Set-Cookie;
для экранирования
СПАСИБО !!!
18.05.2011, в 13:47, Vitaliy Lisenko написал(а):
> может Set-Cookie кешилке не нравится?
>
>
>
> 18 мая 2011 г. 16:15 пользователь Валера Харсеко <vharseko@xxxxxxxxx> написал:
>> нет ни у кого мыслей ?
>>
>> вот примеры ответов бэкенда, который nginx не кладет в кеш:
>>
>>> location ~* ^.*/image\.flag\.aspx$ {
>>> proxy_pass http://shops;
>>> proxy_cache TST;
>>> proxy_cache_key $request_uri;
>>> proxy_cache_valid 200 30d;
>>> }
>>
>> HTTP/1.1 200 OK
>> Cache-Control: public
>> Content-Type: image/gif
>> Last-Modified: Wed, 18 May 2011 08:52:18 GMT
>> Server: Microsoft-IIS/7.5
>> Set-Cookie: countrycode2=ru; expires=Sun, 18-May-2014 08:52:18 GMT; path=/
>> X-AspNet-Version: 4.0.30319
>> Date: Wed, 18 May 2011 08:52:18 GMT
>> Content-Length: 962
>>
>>
>>> location /yml.xml {
>>> proxy_pass http://shops;
>>> proxy_cache TST;
>>> proxy_cache_key $host$request_uri;
>>> proxy_cache_valid 200 1d;
>>> }
>>
>> HTTP/1.1 200 OK
>> Cache-Control: private
>> Transfer-Encoding: chunked
>> Content-Type: text/xml; charset=utf-8
>> Content-Encoding: gzip
>> Expires: Thu, 19 May 2011 08:55:55 GMT
>> Last-Modified: Wed, 18 May 2011 08:55:55 GMT
>> Vary: Accept-Encoding
>> Server: Microsoft-IIS/7.5
>> Set-Cookie: ix_person_guid=708dff8a-d62a-4db5-a1dc-1b3970bd10ca; expires=Wed, 18-May-2016 08:55:55 GMT; path=/; HttpOnly
>> Content-Disposition: attachment; filename=yml.xml;
>> X-AspNet-Version: 4.0.30319
>> Date: Wed, 18 May 2011 08:56:27 GMT
>>
>> а вот эти кладет:
>>
>>> location ~* ^.+\.(jpg|jpeg|gif|js|css|doc|ico|cur|png)$ {
>>> proxy_pass http://shops;
>>> proxy_cache SHOPS;
>>> proxy_cache_key $host$request_uri;
>>> proxy_cache_valid 200 30d;
>>> }
>>
>> HTTP/1.1 200 OK
>> Cache-Control: public
>> Content-Type: image/png
>> Last-Modified: Wed, 18 May 2011 08:52:18 GMT
>> Server: Microsoft-IIS/7.5
>> X-AspNet-Version: 4.0.30319
>> Date: Wed, 18 May 2011 08:52:18 GMT
>> Content-Length: 17198
>>
>> 18.05.2011, в 0:31, Валера Харсеко написал(а):
>>
>>> Заметил, что не весь контент кешируется как задано директивами, например зона SHOPS работает а TST пустая (сделана для удобства проверки)
>>> Думаю, что дело в ответных заголовках или в их отсутствии от бэкенда.
>>> Какие именно заголовки проверять ?
>>>
>>>
>>> proxy_cache_path /var/cache/nginx/shop levels=1:2 keys_zone=SHOPS:1024m inactive=3d max_size=20g;
>>> proxy_cache_path /var/cache/nginx/TST2 levels=1:2 keys_zone=TST:1024m inactive=3d max_size=20g;
>>>
>>> location ~* ^.*/img.+\.png$ {
>>> proxy_pass http://shops;
>>> proxy_cache SHOPS;
>>> proxy_cache_key $host$request_uri;
>>> proxy_cache_valid 200 10d;
>>> }
>>> location ~* ^.+\.(jpg|jpeg|gif|js|css|doc|ico|cur|png)$ {
>>> proxy_pass http://shops;
>>> proxy_cache SHOPS;
>>> proxy_cache_key $host$request_uri;
>>> proxy_cache_valid 200 30d;
>>> }
>>> location ~* ^.*/image\.flag\.aspx$ {
>>> proxy_pass http://shops;
>>> proxy_cache TST;
>>> proxy_cache_key $request_uri;
>>> proxy_cache_valid 200 30d;
>>> }
>>> location /yml.xml {
>>> proxy_pass http://shops;
>>> proxy_cache TST;
>>> proxy_cache_key $host$request_uri;
>>> proxy_cache_valid 200 1d;
>>> }
>>> proxy_redirect off;
>>> proxy_set_header Host $host;
>>> proxy_set_header X-Real-IP $remote_addr;
>>> proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
>>> proxy_connect_timeout 70;
>>> proxy_send_timeout 90;
>>> proxy_read_timeout 600;
>>> proxy_buffering on;
>>> proxy_cache off;
>>> proxy_buffer_size 4k;
>>> proxy_buffers 4 32k;
>>> proxy_busy_buffers_size 64k;
>>> proxy_temp_file_write_size 64k;
>>> proxy_temp_path /var/cache/nginx/proxy_temp 1 2 3;
>>> proxy_ignore_client_abort off;
>>> proxy_intercept_errors on;
>>> proxy_cache_use_stale error updating timeout invalid_header http_500 http_502 http_503 http_504;
>>>
>>> client_max_body_size 10m;
>>> client_body_buffer_size 128k;
>>> client_body_temp_path /var/cache/nginx/client_body_temp 1 2 3;_______________________________________________
>>> nginx-ru mailing list
>>> nginx-ru@xxxxxxxxx
>>> http://nginx.org/mailman/listinfo/nginx-ru
>>
>>
>> _______________________________________________
>> nginx-ru mailing list
>> nginx-ru@xxxxxxxxx
>> http://nginx.org/mailman/listinfo/nginx-ru
>>
>>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@xxxxxxxxx
> http://nginx.org/mailman/listinfo/nginx-ru
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru
А вроде как nginx по дефолту выкидывает параметр Set-Cookie при кешировании, у вас какая версия? Пожалуйста, не меняйте тему письма, пожалуйста, не делайте top quoting это действительно тяжело читать.
Игорь, а нельзя ли при подписке на рассылку отправлять письмо с правилами пользования рассылки? -- Петровский Александр / Alexander Petrovsky, Jabber: juise@xxxxxxxxx
Phone: +7 914 8 820 815
_______________________________________________ nginx-ru mailing list nginx-ru@xxxxxxxxx http://nginx.org/mailman/listinfo/nginx-ru
|