Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
по proxy_cache_key
- To: nginx-ru@xxxxxxxxx
- Subject: по proxy_cache_key
- From: Garanin Michael <m-garanin@xxxxxxxxx>
- Date: Tue, 02 Apr 2013 16:36:17 +0400
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1364906178; bh=pqkddl1K7wKpWg4VzbTIU18ib4hHGSKFBzkc6p/tIAQ=; h=From:To:Subject:Date; b=avjOh5p38nyHblB56XHP2l/v2sWCN7I9jNHi+8Knujx+lxgcEWf2K99Sy8mWr7pJ4 643AzlsIAyMqpGUAdnB30R6iM2gnIcr7ls4kZs2OBWk7a0ZPKbCdxUbX2wCgozFMen J6Q9TNDv56H+aNTzWKfGed4pDbOqcObSVQ4d9zJs=
Подскажите пожалуйста на счёт кеширования.
У меня на сервер приходят запросы вида "/live/FOLDER_PATH/z([0-9]*)/start.dat"
которые nginx проксирует на прокси с путём "/FOLDER_PATH/start.dat"
(кусок (z[0-9]*) в пути для прокси НЕ нужен).
Я хочу чтобы ответы от прокси кешировались под первоначальным урлом, но похоже
что всё кешируется под одним ключём, скорей всего под конечным $uri
(FOLDER_PATH/start.dat). То есть на все запросы - один кеш-объект, а мне нужно
их различать на основе части "(z[0-9]*)".
Cкажите каким образом решить задачу? Заранее спасибо!
(версия nginx 1.2.5 )
location ~ z([0-9]*)/start.dat$ {
proxy_cache live-cache;
proxy_cache_valid 200 302 20m;
proxy_cache_valid 404 1m;
proxy_cache_lock on;
proxy_cache_lock_timeout 20s;
proxy_cache_key $scheme$proxy_host$request_uri;
# избавляюсь от z[0-9]
rewrite ^(.*)/z([0-9]*)/start.dat$ $1/start.dat;
# избавляюсь от live
rewrite /live/(.*) $1 break;
# проксирую
proxy_pass http://127.0.0.1:8087/$uri;
}
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|