2016-09-13 2 views
0

다음은 사이트에 대한 Nginx 구성입니다. 최근 SSL 인증서를 설정하고 HTTPS에서만 서비스를 제공하도록 편집했습니다. 이제 HTTP는 잘 동작하지만 HTTPS로 리디렉션됩니다.SSL을 설정 한 후 Ngnix 구성이 HTTPS를 HTTP로 리디렉션

server { 
    listen 80; 
    listen 443 ssl; 
    server_name abc.test.com; 

    add_header Strict-Transport-Security "max-age=31536000"; 

    ssl_certificate /etc/nginx/ssl/nginx.pem; 
    ssl_certificate_key /etc/nginx/ssl/nginx.key; 

    client_max_body_size 10M; 

    location/{ 
      proxy_pass http://localhost:2368/; 
      proxy_redirect off; 
      proxy_set_header HOST $host; 
      proxy_buffering off; 
    } 
} 

도메인 이름이 단순하게 유지되도록 예제로 바뀝니다.

듣기 시도 제거 80; 그러나 도움이되지 않았다.

+0

그런 리디렉션을 수행 할 수있는 nginx 구성에는 아무 것도 없습니다. 그것은 백엔드 응용 프로그램에서 이동합니다. 따라서 백엔드 코드를 확인해야합니다. – VBart

+0

나는 그것이 nginx 구성이 아니라 부분적으로 백엔드 응용 프로그램과 부분적으로 Cloudflare 구성 (도메인 호스팅 도구)에 동의합니다. 감사합니다 – Jsinh

답변

2

시도해 볼 수 있습니까? HTTP 사이트를 HTTPS로 리디렉션합니다.

server { 
      listen 80; 
      listen [::]:80; 

      server_name abc.test.com; 

      return 301 https://$host$request_uri; 
    } 

    server { 
      # SSL configuration 
      listen 443 ssl; 
      listen [::]:443 ssl; 
      server_name abc.test.com; 

      ssl_certificate /etc/nginx/ssl/nginx.pem; 
      ssl_certificate_key /etc/nginx/ssl/nginx.key; 

      add_header Strict-Transport-Security "max-age=31536000"; 

      client_max_body_size 10M; 

      location/{ 
       proxy_pass http://localhost:2368/; 
       proxy_redirect off; 
       proxy_set_header HOST $host; 
       proxy_buffering off; 
      } 
    } 
+0

지금 브라우저에서 다음과 같은 오류를 보여줍니다 : abc.test.com 페이지가 작동하지 않습니다 abc.test.com가 여러 번 리디렉션되었습니다. – Jsinh

+0

그렇다면 앱의 백엔드 문제입니다. –

+0

동의합니다. nginx 구성이 아니었지만 부분적으로 백엔드 앱이었고 부분적 Cloudflare 구성 (도메인 호스팅 도구)이었습니다. 감사 – Jsinh

관련 문제