Re: proxy_cache_key и fastcgi_cache_key

Maxim Dounin mdounin at mdounin.ru
Fri Jan 10 15:42:18 UTC 2014


Hello!

On Fri, Jan 10, 2014 at 11:54:22AM +0200, Gena Makhomed wrote:

> On 09.01.2014 16:33, Maxim Dounin wrote:
> 
> >>>Смысл значения по умолчанию для proxy_cache_key состоит в том, что
> >>>идентифицируется тот ресурс, куда осуществялется проксирование.
> >>
> >>>Тем самым, если в разных виртуальных серверах проксирование
> >>>осуществляется в одно и то же место - будет использован
> >>>один и тот же элемент кеша.
> 
> Ситуация, когда все размещенные на одном сервере виртуальные хосты
> имеют 100% идентичный контент и разные домены практически невозможна.
> Такая настройка nginx сейчас может появиться только в результате ошибки.
> 
> Еще дефолтовая настройка nginx на $proxy_host может быть полезной
> тем, кто "грабит корованы", то есть показыват на своем сайте контент,
> который был получен с других сайтов путем проксирования с кешированием.

Например, это может быть отдельный location под общие элементы 
и/или ssi-инклуды.  Именно под такие задачи оно исходно и   
программировалось, и именно потому и стоят такие значения по 
умолчанию - запрашиваем с бекенда то, что указано в proxy_pass, и 
кешируем то, что запрашивали.

Просто следует понимать, что задач - больше одной.  И хорошее 
решение для одной задачи - может оказаться плохим для другой.

Проблема, на самом деле, в том, что прописанное в конфиге 
"proxy_set_header Host $host" существенно меняет суть запроса к 
бекенду, а значение по умолчанию proxy_cache_key об этом изменении 
не знает, его надо обучать этому вручную.  Возможно, именно с этой 
стороны и следует подойти к этому вопросу.

[...]

-- 
Maxim Dounin
http://nginx.org/



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