어디서부터 잘못됐는지 모르겠지만 서버 이전을 하면서 ssl을 재적용하려고 시도중이였다.
ivanderevianko.com/2019/03/migrate-letsencrypt-certificates-certbot-to-new-server
처음엔 뭣도모르고 다시 ssl 생성하려다가, 기존에 생성한 ssl 인증용 파일을 복사해야한다는 사실을 몰랐다.
그걸 깨닫고 뒤늦게 위 절차에 따라 시도해보았으나 아래와같은 에러 발생.
To fix these errors, please make sure that your domain name was entered correctly and the DNS A/AAAA record(s) for that domain contain(s) the right IP address. Additionally, please check that your computer has a publicly routable IP address and that no firewalls are preventing the server from communicating with the client. If you're using the webroot plugin, you should also verify that you are serving files from the webroot path you provided.
아무리해도 안되서 인증서 자체를 기존 서버에서 삭제하고 재생성하는 방향으로 우회했다.
그래도 위와 같은 에러가 계속 났는데, 원인은.. nginx ipv6 설정 때문이였다.
왜그런지 모르겠지만 ipv6 설정해둔걸 풀어주니 정상적으로 동작하더라.
솔직히 적잖이 황당했다. 에러메시지가 전혀 연관이 없어서 뭐가 잘못된거지 한참을 헤맸다.ㅠ
이전에 설정해둔 nginx listen 구문을 잘못사용해서 생긴 문제였다.
listen [::]:80로 설정해두고 https로만 사용하다보니 http에서 request가 잘 처리되는지 테스트를 안해봐서 생긴 문제였다. 이 구문은 ipv6에서만 listen하겠다는건데 ipv6 ipv6모두 동작하는걸로 착각했다.
따라서 listen [::]:80 ipv6only=off; 으로 수정해주거나
listen 80을 추가로 작성해주면 된다.
'IT > NGINX' 카테고리의 다른 글
ssl Some challenges have failed. (0) | 2023.12.01 |
---|---|
https자꾸 timeout뜨길래 왜 그런지 봤더니.. (0) | 2023.11.30 |