ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: пропуски fastcgi no cache



Hello!

On Wed, Oct 06, 2010 at 09:51:21AM -0400, n-sw-bit wrote:

> при установке параметров
> 
> fastcgi_cache_min_uses 3;
> fastcgi_no_cache         $cookie_nocache1
> fastcgi_no_cache         $cookie_nocache2
> fastcgi_cache_bypass  $cookie_nocache1
> fastcgi_cache_bypass  $cookie_nocache2
> 
> 
> когда истекает срок жизни кеша ответ
> при наличии указанных кук иногда всё
> равно попадает в кеш.
> Понял я это, включив отладку в логе
> 
> log_format cachetest
> '$time_local|$remote_addr|$request_time|$cookie_nocache1|$cookie_nocache2|$upstream_cache_status|$status|$request';
> 
> 
> И периодически в логе возникают
> строчки вроде
> 
> 06/Oct/2010:17:13:08
> +0400|213.247.165.140|0.500|-|04e097c6502c21124ee8fbdde71ab853|MISS|200|GET / 
> HTTP/1.1
> 
> 
> Т.е. в кеш главной страницы попал ответ,
> отданный зарегистрированному
> пользователю, что подтверждает
> браузер, показывая всем hello, username!
> 
> Кто-нибудь сталкивался с этим? Это глюк
> нового параметра или что-то пропущено в
> настройках?

Патч.

Maxim Dounin
# HG changeset patch
# User Maxim Dounin <mdounin@xxxxxxxxxx>
# Date 1286375230 -14400
# Node ID 94b30aa5d8497cc409579f3253dfa3522c55a28b
# Parent  b2afd36d87f46247bdbe924e232a8fd7b95a6529
Fix predicate testing (*_cache_bypass, *_no_cache).

Values starting with '0' was incorrectly assumed to be false.

diff --git a/src/http/ngx_http_script.c b/src/http/ngx_http_script.c
--- a/src/http/ngx_http_script.c
+++ b/src/http/ngx_http_script.c
@@ -265,7 +265,7 @@ ngx_http_test_predicates(ngx_http_reques
             return NGX_ERROR;
         }
 
-        if (val.len && val.data[0] != '0') {
+        if (val.len && (val.len != 1 || val.data[0] != '0')) {
             return NGX_DECLINED;
         }
     }
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.