On Tue, 21 Jan 2003, Sergey Gershtein wrote:
> Используется директива:
>
> AccelPass / http://_the_same_host_:90/ [MC=10,MW=50]
>
> При этом на backend-е запущено несколько сотен ip-based
> virtualhost-ов, а также несколько name-based. Так вот для name-based
> кеширование на базе ip-адреса, очевидно, неприемлемо.
>
> Пришлось править исходники accel_cache.c, убрать оттуда из функции
> accel_make_cachefile_name "лишнюю" проверку:
>
> /**** if (a->pass->the_same_host) -- убрано
> host = r->connection->local_ip;
> else ****/ if (a->pass->preserve_host)
> host = ap_table_get(r->headers_in, "Host");
>
> Честно говоря, для меня так и осталась загадкой причина, по которой
> при использовании _the_same_host_ кеширование производится по
> IP-адресу, а не по заголовку "Host", тем более, что флаг PH
> выставляется автоматически.
Причину я, видимо, знал около года назад. Сейчас вспомнить не могу,
но, скорее всего, я просто не подумал, что на таких серверах
могут быть ещё и name-based сайты.
> По-моему, было бы правильнее либо не выставлять PH автоматически и,
> соответственно, дать возможность управлять процессом вручную, либо
> тогда уж и кешировать по заголовку "Host".
Скорее всего, я уберу закомментированную проверку.
Игорь Сысоев
http://sysoev.ru
=============================================================================
= Apache-Talk@lists.lexa.ru mailing list =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
= Archive avaliable at http://www.lexa.ru/apache-talk =