이메일 서비스를 변경한 후 포럼이 IP 주소나 URL로 연결되지 않습니다

완전 초보입니다.

작은 사이트인데 과금이 너무 심해서 Sendgrid를 제거하고 SMTP2Go로 전환했습니다.

Discourse에서 사용해야 할 설정 안내를 받고 콘솔의 discourse-setup 명령어를 통해 변경을 했습니다. 그런데 그 이후로는 IP나 URL(forum.g2ic.com)로 포럼에 접근할 수 없습니다.

다른 건 아무것도 변경하지 않았는데, 무엇이 문제인지 도무지 모르겠습니다. 앱을 여러 번 재구축해 보았지만 달라진 것이 없습니다.

이전에 비슷한 문제를 겪은 사람이 있었는데, 그 사람은 같은 포트에서 Wordpress를 실행하고 있었습니다. 하지만 제 환경에는 그런 것이 없습니다. 제가 변경한 것은 SMTP 정보뿐입니다.

혹시 어떤 힌트라도 주실 수 있나요? 도움을 주시면 비용을 지불할 의향이 있습니다 – 지난 7시간 동안 이 문제로 고생하고 있습니다. 꼭 해결해야 합니다.

DNS는 Cloudflare를 사용하고 있습니다.

호스팅은 DigitalOcean입니다.

감사합니다 감사합니다 감사합니다

확신은 없지만, app.yml에서 SMTP 세부 정보를 변경한 뒤 다시 빌드하면 될 것 같아요.

Discourse 설정으로 처리하셨으니, “a” 레코드를 비활성화(그레이 아웃)하고 5분 후 다시 시도해 보시는 건 어떨까요? 그러면 올바른 IP 주소로 설치될 수 있을 거예요.

도움이 되길 바랍니다.

이 문제는 DO 클라우드 방화벽 규칙에 HTTPS(443) 수신 규칙이 없는 것이 원인일 수 있습니다. DigitalOcean 방화벽 규칙의 수신 규칙(Inbound Rules)에서 HTTPS(443) 규칙이 있는지 확인해 주세요. 없다면 추가해 보세요.

@David_Ghost “A” 항목들을 삭제한 후 약 15분 정도 기다렸다가 다시 추가해 보았습니다. 하지만 아무런 변화가 없습니다. (참고로, 말씀하신 A 항목이 Cloudflare의 A 기록을 의미하는 것으로 이해했습니다. 제가 오해했다면 알려 주세요.) 그리고 네, “nano” 명령어를 통해 app.yml 세부 내용을 확인해 보았는데, 모든 설정이 올바르게 되어 있는 것으로 보입니다.

@anoedo Droplet에는 클라우드 방화벽이 활성화되어 있지 않았습니다. 지시하신 대로 방화벽을 추가했습니다. 약 5분 정도 활성화되어 있는 상태인데, 현재까지도 변화가 없습니다.

해당 포트에 대한 새로운 메시지가 나오는지 확인하기 위해 discourse-setup을 다시 실행해 볼 수도 있습니다. 어쩌면 효과가 있을지도 모르겠네요.

그건 정확하지 않습니다. “A” 레코드를 임시로 “DNS ONLY”(회색 구름)로 수정한 후, 5분 뒤에 discourse 설정을 다시 실행해야 합니다. 그러면 작동할 것입니다.

알겠습니다. 포럼의 “A” 레코드가 프록시되어 있었습니다. 이를 “DNS Only”로 설정했습니다. 5분을 기다린 후 설치를 다시 실행하겠습니다. 결과를 보고드리겠습니다.

이번에는 실제로 discourse-setup 프로세스를 완료할 수 있었습니다(비록 약 8시간 전에 처음 시도했을 때도 완료는 됐었지만요). 포트 오류는 발생하지 않았고, 재구축도 완료되었습니다.

하지만 여전히 같은 문제가 있습니다. 답변 주셔서 감사합니다!!

forum.g2ic.com으로 자동 포워딩되는 g2ic.com이 작동하지 않고 “host” 오류가 발생합니다. IP 주소만 입력해도 여전히 같은 오류가 나요.

다른 아이디어가 있을까요? :frowning:

오늘 밤 늦게 다시 와서 상황을 확인하겠습니다. 하지만 여러분의 의견이나 추가 제안을 정말로 듣고 싶습니다. 읽어주셔서 정말, 정말 감사합니다.

아마 재빌드 앱 로그에 단서가 있을지도 모르겠습니다. 그걸 기록하는 방법을 모르지만, 누군가 방법을 알려주신다면 집에 가서 바로 올려드리겠습니다.

아직 오렌지 구름이 남아 있습니다. 이로 인해 Let’s Encrypt가 인증서를 발급받지 못하고, 몇 번 시도한 후에는 속도 제한이 걸립니다.

처음에는 회색으로 두었다가, 다른 서브도메인 모두 프록시(주황색)로 설정되어 있어서 다시 프록시로 되돌렸습니다. 이 문제가 해결될 때까지 앞으로는 계속 회색으로 두겠습니다. 감사합니다!

요청 횟수 제한(rate limit)에 걸렸고 인증서가 없으므로 nginx가 시작되지 않는 것으로 보입니다. 요청 횟수 제한이 해제될 때까지 기다리거나, Set up Let’s Encrypt with multiple domains / redirects 에 설명된 대로 호스트 이름 별칭(hostname aliases)을 사용하여 다른 서브도메인(아마도 최상위 도메인일 수 있음)을 추가해야 합니다.

다른 호스트 이름을 서버로 가리키기 위해 다른 A 레코드(서브도메인인 경우 CNAME)를 추가해야 합니다.

@pfaffman 감사합니다.

그 스레드를 보고 있는 제 모습: :face_with_spiral_eyes:

핵심은 환경 변수에 그 두 항목을 추가하라는 것인 것 같습니다. 한번 시도해 볼 예정입니다. 이미 도메인 포워딩을 설정해 두어서 'g2ic.com’으로 접속하는 사람들이 'forum.g2ic.com’으로 자동 전환되도록 되어 있거든요. 그래서 충돌이 생길지 걱정됩니다.

((90년대에 이 사이트를 운영했을 때, 훨씬 더 쉬웠던 것 같은데 :downcast_face_with_sweat: ))

근데 도대체 왜 SMTP 값만 변경했는데 이런 일이 생긴 거죠? 혹시 아시는 분 계신가요?

호스트네임 아래에 호스트네임 별칭(Hostname alias) 라인을 추가했습니다.

DISCOURSE_HOSTNAME_ALIASES: g2ic.com,board.g2ic.com

Cloudflare에서 "board"에 대한 CNAME 항목을 추가하여 forum.g2ic.com을 가리키도록 설정했습니다.
프록시 미사용(Unproxied)으로 두었습니다.

지금 재빌드하고 있습니다.

보통은 app.yml 파일에서 SMTP 세부 정보를 변경한 후 재빌드하기 때문이에요.

프록시를 사용하여 discourse setup으로 설정을 변경하셨기 때문에 설정이 실패한 것입니다. 그리고 이 작업을 너무 많이(5회) 수행하면 lets encrypt에 의해 1주일 동안 속도 제한(rate limit)을 받습니다. 하지만 crt.sh에서 도메인을 확인하는 과정은 보이지 않아서 좀 이상하네요.

적어도 지금은 사이트가 정상적으로 작동하는 것 같습니다 :partying_face:

docker logs -f app 명령을 실행해 보니 LETSENCRYPT_ACCOUNT_EMAIL이 잘못된 값이라는 오류가 있었습니다. (이전 버전의 파일에서 이 값이 "OFF"로 설정되어 있는 것으로 보입니다.) 이메일 주소를 해당 값으로 변경하고 다시 빌드한 후 이제 정상적으로 작동하고 있습니다.

유효한 이메일 주소가 필요하도록 변경된 것인지 확실하지 않습니다. (Let’s Encrypt가 더 이상 문제를 알리기 위해 해당 주소를 사용하지 않으므로링크 제거되어야 할 것 같습니다.)

지금은 커밋을 확인하여 이 부분에 대해 변경 사항이 있는지 살펴볼 시간이 없지만, 이전에 관련 내용을 본 기억은 없습니다.

이 문제로 도움을 주신 모든 분들께 감사드립니다. 이전 설치 프로그램 설정 시 입력값에 이상한 문제가 있었던 것 같습니다. (저는 해당 값을 "OFF"로 설정하지 않았습니다.) 하지만 이제 다시 온라인 상태입니다. 이메일이 정상적으로 작동하는지는 아직 확인하지 않았지만, 지켜보겠습니다! 지금 이 시점에서는 정말 안도감이 큽니다! 감사합니다!

방금 테스트해봤는데 메일이 정상적으로 작동합니다!