여러 가지 이유로 포럼에 Cloudflare를 사용 중인데, 방문객의 실제 IP 주소를 확인하고 싶습니다. 이를 통해 해당 IP 주소로 가입한 사람이 몇 명인지에 대한 정확한 데이터를 수집하고, IP 차단 등의 기능을 정상적으로 작동시키고 싶기 때문입니다.
이것이 가능한 방법이 있을까요?
cloudflare.template.yml 파일을 app.yml 파일의 templates 섹션에 추가해야 합니다.
실제로, 이제 제 웹사이트를 방문하려고 하면 웹 서버가 다운되어 있습니다?
오류가 무엇인가요? 로그 파일의 내용은 무엇인가요?
포럼을 방문하면 Error 521 Web server down 오류가 발생합니다.
현재 로그 파일에 포함된 내용은 다음과 같습니다:
2021-08-11 12:14:46.898 UTC [556] LOG: starting PostgreSQL 13.3 (Debian 13.3-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit
2021-08-11 12:14:46.899 UTC [556] LOG: listening on IPv4 address "0.0.0.0", port 5432
2021-08-11 12:14:46.899 UTC [556] LOG: listening on IPv6 address "::", port 5432
2021-08-11 12:14:46.996 UTC [556] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2021-08-11 12:14:47.112 UTC [577] LOG: database system was interrupted; last known up at 2021-08-10 14:46:03 UTC
2021-08-11 12:14:47.852 UTC [577] LOG: database system was not properly shut down; automatic recovery in progress
2021-08-11 12:14:47.902 UTC [577] LOG: redo starts at 0/3DFE308
2021-08-11 12:14:47.905 UTC [577] LOG: invalid record length at 0/3E0A2D8: wanted 24, got 0
2021-08-11 12:14:47.905 UTC [577] LOG: redo done at 0/3E0A2B0
2021-08-11 12:14:48.332 UTC [556] LOG: database system is ready to accept connections
2021-08-11 15:09:07.632 UTC [556] LOG: received smart shutdown request
2021-08-11 15:09:08.970 UTC [556] LOG: background worker "logical replication launcher" (PID 585) exited with exit code 1
2021-08-11 15:09:08.973 UTC [580] LOG: shutting down
2021-08-11 15:09:09.018 UTC [556] LOG: database system is shut down
2021-08-11 15:14:54.109 UTC [564] LOG: starting PostgreSQL 13.3 (Debian 13.3-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit
2021-08-11 15:14:54.110 UTC [564] LOG: listening on IPv4 address "0.0.0.0", port 5432
2021-08-11 15:14:54.110 UTC [564] LOG: listening on IPv6 address "::", port 5432
2021-08-11 15:14:54.132 UTC [564] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2021-08-11 15:14:54.136 UTC [576] LOG: database system was shut down at 2021-08-11 15:14:20 UTC
2021-08-11 15:14:54.147 UTC [564] LOG: database system is ready to accept connections
2021-08-11 15:48:11.435 UTC [564] LOG: received smart shutdown request
2021-08-11 15:48:12.349 UTC [564] LOG: background worker "logical replication launcher" (PID 582) exited with exit code 1
2021-08-11 15:48:12.349 UTC [577] LOG: shutting down
2021-08-11 15:48:12.397 UTC [564] LOG: database system is shut down
2021-08-11 15:48:17.233 UTC [555] LOG: starting PostgreSQL 13.3 (Debian 13.3-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit
2021-08-11 15:48:17.233 UTC [555] LOG: listening on IPv4 address "0.0.0.0", port 5432
2021-08-11 15:48:17.233 UTC [555] LOG: listening on IPv6 address "::", port 5432
2021-08-11 15:48:17.245 UTC [555] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2021-08-11 15:48:17.255 UTC [570] LOG: database system was shut down at 2021-08-11 15:48:12 UTC
2021-08-11 15:48:17.271 UTC [555] LOG: database system is ready to accept connections
2021-08-11 18:24:06.544 UTC [555] LOG: received smart shutdown request
2021-08-11 18:24:11.892 UTC [555] LOG: background worker "logical replication launcher" (PID 576) exited with exit code 1
2021-08-11 18:24:11.895 UTC [571] LOG: shutting down
2021-08-11 18:24:11.936 UTC [555] LOG: database system is shut down
2021-08-11 18:59:31.940 UTC [554] LOG: starting PostgreSQL 13.3 (Debian 13.3-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit
2021-08-11 18:59:31.940 UTC [554] LOG: listening on IPv4 address "0.0.0.0", port 5432
2021-08-11 18:59:31.940 UTC [554] LOG: listening on IPv6 address "::", port 5432
2021-08-11 18:59:31.964 UTC [554] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2021-08-11 18:59:31.977 UTC [570] LOG: database system was shut down at 2021-08-11 18:24:11 UTC
2021-08-11 18:59:32.004 UTC [554] LOG: database system is ready to accept connections
이것이 데이터베이스 로그입니다. /var/discourse/shared/standalone/log/var-log/nginx/error.log의 로그를 확인해 주시겠습니까?
error.zip (123.2 KB)
error.log 파일은 이 zip 파일 안에 있습니다. 대부분 동일한 내용입니다. (.log 파일은 지원되지 않아 게시할 수 없고, error.log 파일에는 텍스트가 매우 많이 포함되어 있습니다)
Cloudflare 템플릿이 현재 깨져 있는 것 같습니다. 마지막 업데이트가 2016년이었네요. 삭제 후 다시 구축해 주세요. 시간이 허락하면 제가 수정해 보겠습니다.
좋아요, 도움 주셔서 감사합니다!
저도 같은 문제를 겪고 있는데, 여기에 해결책이 있어서 다행입니다 ![]()
이상한 점은 오늘 수행된 리빌드에만 문제가 발생하는 것 같습니다. 다른 서버들(동일한 Discourse 버전 - Stable 2.7.7)은 정상적으로 작동하고 있습니다.
최근 몇몇 포럼에서 업데이트 이후가 아닌데도 몇 가지 이상한 오류가 발생하기 시작했습니다:
Oops
이 토론 포럼을 구동하는 소프트웨어에서 예상치 못한 문제가 발생했습니다. 불편을 드려 죄송합니다.
오류에 대한 자세한 정보가 기록되었으며 자동 알림이 생성되었습니다. 확인해 보겠습니다.
추가 조치는 필요하지 않습니다. 다만 오류 상태가 지속되면, 오류 재현 단계를 포함한 추가 정보를 사이트의 피드백 카테고리에 토론 주제를 게시하여 제공할 수 있습니다.
관련이 있는지 확실하지는 않지만, 이 오류가 최근 같은 버전에서 리빌드를 진행하게 된 이유였습니다.
수정: 확인 결과, Cloudflare 템플릿을 제거하면 521 오류가 해결되었습니다.
업데이트: @Zenexer 님이 이에 대한 PR을 만든 것 같습니다: Cloudflare template broken again
app.yml에서 Cloudflare 템플릿 라인을 주석 처리하면 제 사이트에 어떤 영향을 미칠까요? 우리는 사이트에 Cloudflare을 사용하고 있습니다.
또한, 제 문제가 이것과 같은 문제인가요? https://meta.discourse.org/t/discourse-updated-from-admin-not-working-after-rebuild-fatal-error-site-does-not-load-anymore-after-rebuild/200443
@markersocial 제 사이트가 Cloudflare에서 실행되고 있는데, 해당 라인을 삭제하면 제 사이트에 어떤 일이 발생할까요?
제 지식을 한다면, 사용자의 가입 정보와 최근 사용된 IP가 실제 IP가 아닌 Cloudflare IP로 기록될 것입니다. 따라서 누군가를 차단하면 Cloudflare IP가 차단 목록에 추가되게 됩니다. 이는 좋은 상황이 아닙니다.
이는 사용자가 우연히 차단된 Cloudflare IP를 할당받는 경우(템플릿이 사용되지 않는 동안) 로그인하거나 가입할 수 없음을 의미할 수 있습니다. 이미 로그인된 사용자는 영향을 받지 않을 것입니다. 과거에는(아직도 그럴 가능성이 높지만, 확실하지는 않습니다) 이로 인해 관리자나 모더레이터조차 새로운 세션에 로그인하지 못하는 문제가 발생하기도 했습니다.
템플릿이 사용 가능해질 때까지 공개 가입을 비활성화하고 IP 차단을 사용하지 않는 것이 좋은 선택일 수 있습니다.
네, 감사합니다. 제 문제가 정말로 이 Cloudflare 템플릿 버그와 동일한 문제라고 생각하시나요? 제 마지막 게시물에 있는 토픽 링크를 확인해 주시고, 제게 확인해 주시겠습니까?
같은 버그를 진단하기 위해 어떤 로그 명령어를 사용해야 하나요?
그리고 502 오류가 동일한 CF 오류 때문이라고 어떻게 확신하셨나요?
Cloudflare template broken again - #3 by Zenexer 를 통해 수정되었습니다. 다시 사용해 보세요.