Re: nginx + IIS6.0 + asp.net и кеширование страниц целиком

Igor Sysoev igor на sysoev.ru
Пт Июл 29 07:04:09 UTC 2011


On Fri, Jul 29, 2011 at 02:43:26AM -0400, Dmitry AT wrote:

> proxy_cache_key "$request_method|$is_args|$host|$request_uri";

Не знаю, в чьей голове впервые появился такой ключ, я вижу его
достаточно часто, но по сути он бестолков, особенно в районе $is_args.

Вот какие значения получит ключ в зависимости от запроса:

GET http://www.site.com/index.html
GET||www.site.com|/index.html

HEAD http://www.site.com/index.html
HEAD||www.site.com|/index.html

GET http://www.site.com//index.html
GET||www.site.com|//index.html

GET http://www.site.com/index.html?one=1
GET|?|www.site.com|/index.html?one=1


Нормальный ключ:
proxy_cache_key "$host|$uri$is_args$args";

GET http://www.site.com/index.html
www.site.com/index.html

HEAD http://www.site.com/index.html
www.site.com/index.html

GET http://www.site.com//index.html
www.site.com/index.html

GET http://www.site.com/index.html?one=1
www.site.com/index.html?one=1

Как видно, для первых трёх запросов ключ будет один и тот же, и ответ
для них будет обслужен из одного закэшированного ответа.


-- 
Игорь Сысоев
http://sysoev.ru



Подробная информация о списке рассылки nginx-ru