LINUX.ORG.RU
решено ФорумAdmin

Ошибка 400 в nginx

 ,


0

2

Устанавливаю связку nginx && gunicorn && django.
Взял сертификаты от lets'n'crypt.
Настраиваю nginx по образцу. При заходе на сайт через http, появляется ошибка:
400 The plain HTTP request was sent to HTTPS port
при заходе на HTTPS, всё ок. Как сделать перенаправление на HTTPS или поправить ошибку?
конфиг такой:

upstream app_server {
    server unix:/tmp/gunicorn_ugoal.sock fail_timeout=0;
  }

server {
    listen 80;
    server_name localhost www.localhost;
    return 301 https://$server_name$request_uri;
}


server {
    listen 443 default ssl;
    ssl_certificate ###;
    ssl_certificate_key ###;

    server_name server_name localhost www.localhost;

    root /home/web;

    location / {
      try_files $uri @proxy_to_app;
    }

    location @proxy_to_app {
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header Host $http_host;
      proxy_redirect off;
      proxy_pass http://app_server;
    }

    error_page 500 502 503 504 /500.html;
    location = /500.html {
      root /home/web;
    }
  }

Ответ на: комментарий от Centrin0

А ежели так?

upstream app_server {
    server unix:/tmp/gunicorn_ugoal.sock fail_timeout=0;
  }


server {
    listen 80;
    listen 443 default ssl;
    ssl_certificate ###;
    ssl_certificate_key ###;

    if ( $scheme = "http" ) {
 rewrite ^/(.*)$ https://$host/$1 permanent;
 }    

    server_name server_name localhost www.localhost;

    root /home/web;

    location / {
      try_files $uri @proxy_to_app;
    }

    location @proxy_to_app {
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header Host $http_host;
      proxy_redirect off;
      proxy_pass http://app_server;
    }

    error_page 500 502 503 504 /500.html;
    location = /500.html {
      root /home/web;
    }
  }

sand_circle
()
Ответ на: комментарий от sand_circle

Помогло обновление nginx.
Подключил репозиторий и скачал последний.
Стабильность Debian подвела.

Centrin0
() автор топика
Ответ на: комментарий от Centrin0

Не надо рассказывать, у меня на стабильном Debian конструкция из ОП-поста работает нормально (nginx 1.6.2, Debian 8.5).

alozovskoy ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.