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
|