ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to detect https?



On Thu, 16 Mar 2006 16:45:41 +0300 (MSK)
Igor Sysoev wrote:

>      server {
>          listen 80;
> 
>          location / {
>              fastcgi_pass ...
>              fastcgi_param  HTTPS  NO;
>          }
>      }
> 
>      server {
>          listen 443;
>          ssl    on;
> 
>          location / {
>              fastcgi_pass ...
>              fastcgi_param  HTTPS  YES;
>          }
>      }

  В этом случае location / просто дублируется. У меня его
  настройки тоже полностью совпадают, поэтому я вынес их
  в файл foo.conf:

      server {
          listen 80;

          include foo.conf;
      }
 
      server {
          listen 443;
          ssl    on;
 
          include foo.conf;
      }

  Как теперь в foo.conf добавить проверку HTTPS?

  Нашёл упоминание о нём разве что в Referer:

        set             $https          "off";
        if ($http_referer ~ "^https://";) {
                set     $https          "on";
        }

        fastcgi_param   HTTPS           $https;

  Однако, реферера может не быть, или он сознательно
  ссылается с http-страницы на https- .

-- 
 Григорий Баталов,
 программист
 ЗАО "Ланит-Терком"



 




Copyright © Lexa Software, 1996-2009.