On Thu, 13 Nov 2003, Dmitry Belyavsky wrote:
> On Thu, 13 Nov 2003, Igor Sysoev wrote:
>
> > > Есть контент, который может отдаваться как по http, так и по https.
> > > Хочется, чтобы пользователь получил страницу с правильными ссылками (то
> > > есть по правильному протоколу) в зависимости от того, по какому
> > > протоколу он пришел.
> > >
> > > Хватит ли для этого пробрасывания http и https запросов на разные порты
> > > backend? Предполагается, что backend формирует ссылки правильно.
> >
> > Да.
> > Но, естественно, AccelPas должен быть без флага [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>
Игорь Сысоев
http://sysoev.ru