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