Приветствую!
On Thu, 13 Nov 2003, Igor Sysoev wrote:
> > > > > > Есть контент, который может отдаваться как по http, так и по https.
> > > > > > Хочется, чтобы пользователь получил страницу с правильными ссылками
>(то
> > > > > > есть по правильному протоколу) в зависимости от того, по какому
> > > > > > протоколу он пришел.
> > > > > >
> > > > > > Хватит ли для этого пробрасывания http и https запросов на разные
>порты
> > > > > > backend? Предполагается, что backend формирует ссылки правильно.
> > > > >
> > > > > Да.
> > > > > Но, естественно, AccelPas должен быть без флага [PH].
> >
> > Тогда как это соотносится с тем, что написано ниже?
>
> Выше я имел ввиду, что AccelPass [PH] стоит для всего сервера.
> Теперь вижу, что неверно прочитал.
>
> > > > Полностью ситуация выглядит так:
> > > > Для одного и того же 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.
Имеем конфиг:
========
<VirtualHost linux.homenet:80>
ServerName linux.homenet
RewriteEngine on
ProxyPass /robots.txt http://localhost:8888/robots.txt
ProxyPass /scripts http://localhost:8888/scripts
AccelPass /files http://localhost:8888/files [PH]
RewriteRule ^/pictures/([^/]/.*) /var/www/cmw_no_tc/pictures/$1 [L]
RewriteRule ^/pictures/([^/][^/])(.*) /var/www/cmw_no_tc/pictures/$1/$1$2 [L]
AccelPass /default http://localhost:8888/default [PH]
RedirectMatch ^/default$ http://linux.homenet:80/default/
</VirtualHost>
<VirtualHost linux.homenet:443>
ServerName linux.homenet
RewriteEngine on
ProxyPass /robots.txt http://localhost:8889/robots.txt
ProxyPass /scripts http://localhost:8889/scripts
AccelPass /files http://localhost:8889/files [PH]
RedirectMatch ^/$ https://linux.homenet:443/default
RewriteRule ^/pictures/([^/]/.*) /var/www/cmw_no_tc/pictures/$1 [L]
RewriteRule ^/pictures/([^/][^/])(.*) /var/www/cmw_no_tc/pictures/$1/$1$2 [L]
SSLEngine on
SSLCertificateFile /usr/local/communiware/conf/ssl.crt/default.crt
SSLCertificateKeyFile /usr/local/communiware/conf/ssl.key/default.key
AccelPass /default http://localhost:8889/default [PH]
</VirtualHost>
=========
И описанную выше картину: если зайти сначала по http, а потом по https - то во
втором случае из кеша отдастся страница с http-шными ссылками.
Никак не фиксится?
--
SY, Dmitry Belyavsky (ICQ UIN 11116575)