Re: Настроить HTTP и HTTPS на одном сервере

Dmitriy Lyalyuev dmitriy at lyalyuev.info
Mon Dec 9 09:30:47 UTC 2013


Добрый день.

proxy_set_header           X-Forwarded-Proto $scheme;

09.12.2013 11:24, mnsold пишет:
> Основная проблема: по HTTPS перенаправляет на HTTP протокол, вместо HTTPS.
> По HTTP все отрабатывает нормально.
> Локальный сетевой трафик хочется по HTTP гонять (и проблемы видимо отсюда и
> растут), чтобы не нагружать сервер, да и весь локальный трафик между
> серверами считаю доверенным.
> В качестве бэкэнда стоит апач.
>
> Само перенаправление (без слэша в конце), как оно проиходит.
> Тут все нормально:
> http://myhost/context -> http://myhost/context/
> А вот тут перенаправляет на HTTP, вместо HTTPS
> https://myhost/context -> http://myhost/context/
> Подскажите, как нужно поправить конфиг, чтобы перенаправлял на HTTPS, при
> условии что хочется внутренний трафик гонять по HTTP?
>
> Конфиги:
> server {
> listen          *:80;
> listen          *:443 ssl;
> server_name     myhost;
>
> ssl_certificate     /.../server.crt;
> ssl_certificate_key /.../server.key;
>
> ssl_protocols SSLv2 SSLv3;
> ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
> ssl_verify_client off;
>
> include conf.d/test-apache.cfg;
>
> error_log  /var/log/nginx/error.log warn;
> access_log  /var/log/nginx/access.log  main;
> }
>
> Файл test-apache.cfg
> location ^~ / {
>          proxy_pass http://localhost:80;
>
>          proxy_set_header   Host                 $http_host;
>          proxy_set_header   X-Real-IP            $remote_addr;
>          proxy_set_header   X-Forwarded-For      $proxy_add_x_forwarded_for;
> }
>
> Замечено, что если в proxy_pass отправлять по https то все работает
> нормально, например:
> в файле test-apache.cfg заменить
> 	proxy_pass http://localhost:80;
> на
>         if ( $scheme = "http" ) {
>           proxy_pass http://localhost:80;
>         }
>         if ( $scheme = "https" ) {
>           proxy_pass https://localhost:443;
>         }
>
> На стороне апача на данный момент все предельно просто
>          Alias /context "/var/www/context"
>          <Directory "/data/web/statistica">
>                  Options Indexes MultiViews
>                  AllowOverride None
>                  Order allow,deny
>                  Allow from all
>          </Directory>
>
> Posted at Nginx Forum: http://forum.nginx.org/read.php?21,245346,245346#msg-245346
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru


-- 
Dmitriy Lyalyuev
http://lyalyuev.info



Подробная информация о списке рассылки nginx-ru