Discourse 댓글이 "로딩 중..."에 멈춤

이 문제에 대한 조사가 일부 변경되었으므로 업데이트를 게시합니다. 3.0.4로 업데이트한 이후에도 문제가 지속되고 있으며, 새로 생성된 모든 게시물에서 내장된 Discourse 코드가 표시되는 문제가 발생합니다. 이 업데이트 이전에 생성된 게시물에는 문제가 없으므로 IP 주소 차단으로 인한 문제가 아닙니다.

가장 최근 버전의 Discourse에서 내장 코드로 게시물이 자동 생성되는 로직이 변경된 것으로 보입니다. 이제 새로운 코드는 canonical URL(정규 URL)을 요구합니다. 이전에 링크된 주제를 참고하세요:

그러나 이 변경으로 인해 제 사이트와 같은 사이트에서 내장 기능이 완전히 깨집니다. 이전에는 아래 코드에서 볼 수 있듯이 Drupal의 Node ID를 사용하여 내장 처리를 했습니다:

discourseEmbedUrl = "http://sitename.com/node/' . $nid . '";

이 새로운 Discourse 코드는 대신 canonical URL을 사용하도록 요구하며, 이는 누군가가 단순히 게시물 제목을 변경할 경우 중복된 토픽이 생성되는 결과를 초래합니다. Node ID는 변경되지 않기 때문에 Node ID를 사용했던 것입니다.

이 새로운 canonical URL을 선택 사항으로 만들 수 있을까요? 내장 코드를 canonical URL을 사용하도록 변경해 보았지만, 구버전 내장 코드를 사용하여 생성된 모든 게시물에서 로딩 문제가 다시 발생했습니다.

따라서 현재, 프로덕션 사이트에서 새로운 Discourse 코드가 실행되고 있는 상태에서 다음 두 옵션 중 하나에 막혀 있습니다:

  • Drupal에서 새로 생성된 게시물은 "로딩 중…"을 표시하지만 댓글 내장 블록이 절대 로드되지 않으며, Discourse 3.0.4 이전의 구버전 게시물은 정상적으로 로드됩니다.

또는

  • Drupal에서 새로 생성된 게시물은 댓글 내장 블록을 정상적으로 로드하지만, Discourse 3.0.4 이전의 모든 구버전 게시물은 "로딩 중…"을 표시하지만 댓글 내장 블록이 절대 로드되지 않습니다.

이 새로운 기능을 선택 사항으로 만들 방법이 있을까요? 이 두 옵션 중 하나를 선택해야 하는 상황은 저를 다소 패자-패자(lose-lose) 상황에 놓이게 합니다.