이것이 실제 문제인 것 같습니다: [2024-03-14 06:02:59] comment.ERROR: sync_comments.response_error {"message":"Forbidden","discourse_topic_id":"","wp_post_id":13514,"http_code":403}
추측은 조금 있지만, 이 플러그인은 WordPress 사이트가 프록시 뒤에 있음을 시사합니다:
이것이 Discourse에서 403 오류를 유발하고 있을 수 있습니다. 아마도 요청 헤더가 올바르게 구성되지 않은 것일까요? 이 부분은 제가 잘 아는 분야가 아닙니다. 하지만 WordPress에서 게시물을 게시하면서 Discourse 사이트의 오류 로그(Error Logs) 페이지를 열어두면 문제가 무엇인지 확인할 수 있을 것입니다.
사이트에 Proxy Real IP - 1.1 플러그인이 설치되어 있다는 것은 서버 구성이 상당히 복잡하다는 것을 시사합니다. 사이트를 설정한 사람에게 세부 사항을 문의해 보는 것이 좋습니다. 또한 이러한 문제를 대신 처리해 주는 호스팅 서비스로 사이트를 이전하는 것도 고려해 볼 수 있습니다.
어제보다 이 문제가 Discourse 오류 로그에 나타날 것이라고 확신하지는 않지만, 그래도 시도해 볼 가치가 있습니다.
이 플러그인은 설치되어 있지만, 독일어 페이지에서는 비활성화되어 있고 영어 페이지에서만 활성화되어 있습니다. 몇 주 전에 이 페이지를 맡기 전의 담당자에게 해당 플러그인에 대해 물어본 적이 있는데, 영어 페이지에서도 비활성화하는 것을 잊어버렸네요. Discourse는 비활성화된 상태인 독일어 페이지에만 연결되어 있습니다. 따라서 현재로서는 기능이 없는 것으로 보입니다.
이런 기술적인 사항들에 대해 더 잘 알고 싶다는 생각이 듭니다. 가끔 워드프레스가 매우 느리게 느껴지기도 하는데, 인터넷에서 여기저기 찾아보아도 이런 복잡한 내용들을 제대로 파악하기가 쉽지 않거든요.
정리하자면: 제가 주로 언급하는 것은 miasanrot.de 사이트이며, miasanrot.com은 Discourse에 연결되어 있지 않습니다. 따라서 이 사이트는 워드프레스의 기본 댓글 시스템을 사용하고 있습니다.
이제 더 나빠졌습니다: WP에 로그인하지 않은 사용자들에게 새 게시물이 표시되지 않습니다. 즉, 페이지가 동결된 것처럼 보입니다.
업데이트 2: 이제 댓글의 올바른 개수와 함께 새 게시물이 표시되지만, 정확히 무엇이 변경되었는지 잘 모르겠습니다. 한 가지 추측: 이전에 언급한 두 개의 캐싱 플러그인을 비활성화하고 WP Rocket만 활성화해 두었습니다. 두 플러그인을 다시 활성화해 보았지만 아무런 변화가 없었습니다. 그런 다음 편집기에서 게시물을 업데이트했고, 그때 제대로 작동했습니다. 두 플러그인 중 하나(nginx helper)는 "게시물이 편집/게시될 때마다 nginx의 fastcgi/proxy 캐시 또는 redis-cache를 정리합니다. 또한 몇 가지 다른 작업도 수행합니다."라고 설명하고 있습니다. 그래서 이 과정이 페이지가 올바르게 표시되도록 도운 것으로 추정됩니다.
그렇다면 이제 WP Rocket을 비활성화할 수 있을 것 같지만, 캐싱 관련해서 여전히 뭔가 이상한 부분이 있고, 이것이 Discourse 문제와 연결되어 있을 수 있다는 느낌을 지우기 어렵습니다.
가장 큰 문제는 분명 다른 데에 있지만, 왜 Nginx-helper를 사용하시나요? WP Rocket은 정적 카피를 생성하므로, fastcgi와 Redis를 위한 별도의 캐시가 필요하지 않습니다. 물론 WP Rocket이 사용되고 있더라도 PHP 호출에 캐싱이 필요한 상황이 있지만, 그런 사이트들은 일반적으로 WP Rocket이 아닌 훨씬 더 전문적인 도구를 사용합니다.