2025년 여름부터 Cloudflare를 프록시 모드로 Discourse 포럼 앞에 배치하여 사용해 왔는데, 아무 문제 없이 잘 작동하고 있습니다. 요즘에는 Discourse를 제대로 작동시키기 위해 특별히 해야 할 Discourse 고유 설정이 많지 않기 때문입니다.
가장 중요한 항목 중 하나는 app.yml 파일에 Cloudflare 템플릿을 포함시키는 것입니다. 이를 하지 않으면 Discourse 대시보드에서 실제 방문자 IP 주소 대신 Cloudflare 서버 IP 주소만 표시됩니다.
“/session/*에 대한 캐시 우회” 규칙은 여전히 필요한 것으로 보입니다(새로운 인터페이스에서 캐시 규칙으로 설정하십시오). 또한 “게시물 생성/편집 시 WAF 건너뛰기” 규칙은 확실히 여전히 필요합니다(저는 이를 관리 규칙으로 설정해 두었습니다).
저는 주로 Discourse를 WordPress 사이트의 댓글 시스템으로 사용하므로, 방문자가 특정 WP 게시물의 댓글 스레드를 요청할 때 웹 서버가 출력하는 /wp-json/wp-discourse/v1/discourse-comments?post_id=xxxx AJAX 응답에 WordPress에서 60초의 TTL을 추가하고 있습니다. 이는 급증하는 방문자 패턴을 관리하는 데 도움이 됩니다. /wp-json/wp-discourse/가 포함된 URI에 대해 TTL을 존중하는 CF 캐시 규칙을 추가했습니다(Cloudflare에서는 Enterprise 계정이 없으면 해당 URL에 충분히 짧은 TTL을 설정할 수 없으므로, mu-플러그인을 통해 애플리케이션 계층에서 TTL을 설정한 후 CF 캐시 규칙을 통해 CF가 해당 TTL을 존중하도록 설정했습니다.)
이 밖에도 스레드의 첫 번째 게시물에서 언급된 기본 설정을 제외하면 할 일이 별로 없습니다. Cloudflare는 Discourse와 상당히 잘 작동합니다.