Приветствую!
On Thu, 13 Nov 2003, Igor Sysoev wrote:
> > > > > > Есть контент, который может отдаваться как по http, так и по https.
> > > > > > Хочется, чтобы пользователь получил страницу с правильными ссылками
>(то
> > > > > > есть по правильному протоколу) в зависимости от того, по какому
> > > > > > протоколу он пришел.
> > > > > >
> > > > > > Хватит ли для этого пробрасывания http и https запросов на разные
>порты
> > > > > > backend? Предполагается, что backend формирует ссылки правильно.
> > > > >
> > > > > Да.
> > > > > Но, естественно, AccelPas должен быть без флага [PH].
> >
> > Тогда как это соотносится с тем, что написано ниже?
>
> Выше я имел ввиду, что AccelPass [PH] стоит для всего сервера.
> Теперь вижу, что неверно прочитал.
>
> > > > Так. А флаг [PH] мне необходим по другим причинам. А передавать на
> > > > backend хост с портом (80/443) нельзя?
> > >
> > > При выборе бэкенда из заголовка "Host" берётся только имя хоста без порта.
> > > Так что не выйдет.
> > >
> > > Но даже если бы порт из "Host" передавался, то в данном случае я не
>уверен,
> > > что браузер передаёт в "Host" 443 для https. Хотя в принципе, можно было
>бы
> > > подставлять порт самому.
> > >
> > > > Полностью ситуация выглядит так:
> > > > Для одного и того же url в зависимости от хоста запрос должен
> > > > возвращать разные результаты. Про зависимость от протокола - см. выше.
> > >
> > > Я бы попробовал примерно так:
> > >
> > > <VirtualHost *:80>
> > > AccelPass / http://backend:8000/ [PH]
> > > </VirtualHost>
> > >
> > > <VirtualHost *:443>
> > > AccelPass / http://backend:8443/ [PH]
> > > </VirtualHost>
> >
> > То есть при этом в ключ хеша попадет и порт backend, и хост? Если да, то
> > это то, что мне надо.
>
> Да. То есть, если к нам придут с "Host: site" или "Host: site:80", то
> запрос уйдёт на site:8000.
В смысле на backend:8000?
Таким образом, при последовательном обращении к одной и той же странице
по http и https apache оба раза пойдет на backend, а уж там мы
разберемся. Великолепно.
Спасибо!
--
SY, Dmitry Belyavsky (ICQ UIN 11116575)