Linux
nginx에서 http->https 리디렉션 설정된 경우 let's encrypt 인증서 갱신 안될때
- 2024.10.08 15:01:14
nginx 를 사용할 때 특정 조건에서 let's encrypt 인증서가 갱신이 안되는 경우가 있다. 나의 경우 http 접속하는 경우 https로 리디렉션 함과 동시에, proxy 를 통해 목적지 서버로 트래픽을 전달하는데, 이 과정에서 webroot를 찾지 못해 갱신이 안되는 문제였다. 따라서, 아래와 같이 certbot에서 웹서버를 접근하는 경우 https로 리디렉션 되지 않도록 예외 처리 하였다. [!]기존 문제가 된 구문[/!] server {
listen 80; server_name note.chanyeongpark.com; index index.html; root /서버경로/; return 301 https://note.chanyeongpark.com$request_uri; // 문제가 되는 구문 } 301로 https로 리디렉션 되고 있는 구문을 아래와 같이 수정하였다. [!]수정된 구문[/!] 아래와 같이 certbot에서 접근하는 경우 예외처리하여 https로 리디렉션 되지 않도록 처리하였고 정상 갱신 되는 것을 확인 하였다. server {
listen 80; server_name note.chanyeongpark.com; index index.html; location /.well-known/acme-challenge/ { root /서버경로/; } location / { return 301 https://note.chanyeongpark.com$request_uri; } } |