Приветствую!
On Thu, 13 Nov 2003, Igor Sysoev wrote:
> > > > > > Есть контент, который может отдаваться как по http, так и по https.
> > > > > > Хочется, чтобы пользователь получил страницу с правильными ссылками
>(то
> > > > > > есть по правильному протоколу) в зависимости от того, по какому
> > > > > > протоколу он пришел.
> > > > > >
> > > > > > Хватит ли для этого пробрасывания http и https запросов на разные
>порты
> > > > > > backend? Предполагается, что backend формирует ссылки правильно.
> > > > >
> > > > > Да.
> > > > > Но, естественно, AccelPas должен быть без флага [PH].
> >
> > Тогда как это соотносится с тем, что написано ниже?
>
> Выше я имел ввиду, что AccelPass [PH] стоит для всего сервера.
> Теперь вижу, что неверно прочитал.
>
> > > > Полностью ситуация выглядит так:
> > > > Для одного и того же url в зависимости от хоста запрос должен
> > > > возвращать разные результаты. Про зависимость от протокола - см. выше.
> > >
> > > Я бы попробовал примерно так:
> > >
> > > <VirtualHost *:80>
> > > AccelPass / [PH]
> > > </VirtualHost>
> > >
> > > <VirtualHost *:443>
> > > AccelPass / [PH]
> > > </VirtualHost>
> >
> > То есть при этом в ключ хеша попадет и порт backend, и хост? Если да, то
> > это то, что мне надо.
>
> Да. То есть, если к нам придут с "Host: site" или "Host: site:80", то
> запрос уйдёт на site:8000.
Имеем конфиг:
========
<VirtualHost linux.homenet:80>
ServerName linux.homenet
RewriteEngine on
ProxyPass /robots.txt
ProxyPass /scripts
AccelPass /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 [PH]
RedirectMatch ^/default$
</VirtualHost>
<VirtualHost linux.homenet:443>
ServerName linux.homenet
RewriteEngine on
ProxyPass /robots.txt
ProxyPass /scripts
AccelPass /files [PH]
RedirectMatch ^/$
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 [PH]
</VirtualHost>
=========
И описанную выше картину: если зайти сначала по http, а потом по https - то во
втором случае из кеша отдастся страница с http-шными ссылками.
Никак не фиксится?
--
SY, Dmitry Belyavsky (ICQ UIN 11116575)