이 임베드가 왜 작동하지 않는지 파악하려고 여기저기 헤매고 있습니다:
referer는 정상적으로 받는 것 같은데, 그걸로 문제를 해결하지 못하는 것 같습니다. 관련 주제들을 찾아봤지만 이 특정 문제에 대한 내용은 찾을 수 없었습니다. 혹시 .quest TLD와 관련이 있을까요?
그렇게 보이지만, @eviltrout 님은 어떤 생각이세요?
실제로 매칭되어야 하므로 꽤 흥미롭네요.
요청에 topic_id가 포함되어 있는지 궁금합니다. 토픽이 없는 경우 이 오류가 실수로 표시될 수 있는 코드 경로를 확인할 수 있습니다.
최신 버전의 Discourse를 사용 중이신가요? 요즘은 대부분의 곳에서 referrer 확인을 제거했습니다.
이 사이트에서 discourseEmbedUrl 설정을 사용하려고 하고 있습니다. 제 댓글 컴포넌트는 GitHub에 있으며, 핵심은 다음과 같습니다:
window.DiscourseEmbed = {
discourseUrl: siteMetadata.comment.discourseConfig.url,
discourseEmbedUrl: thread,
discourseReferrerPolicy: 'no-referrer-when-downgrade',
}
여기서 thread = window.location.href입니다.
설정들을 이것저것 바꿔보면서 지금은 Referer에 전체 URL이 들어오도록 만들었지만, 여전히 '일치하지 않습니다’라는 오류가 발생합니다. 이는 블로그 페이지 하단에서 확인할 수 있습니다.
수정: 저는 2.8.0.beta10을 사용 중이었으나, 방금 2.8.0.beta11로 업데이트했는데도 여전히 동일한 문제입니다. 제가 생각할 수 있는 다른 변수는 이 Discourse 인스턴스가 원래 다른 URL에서 시작되어 이전(실제로는 포크)되었다는 점입니다. 하지만 그 외에는 모두 정상 작동하므로 이전 과정에서 문제가 생겼다고 생각할 이유는 없습니다.
데이터베이스의 topic_embed 레코드를 확인하여 올바른지 확인해 보시는 것이 좋습니다. URL에서 마이그레이션하는 동안 해당 레코드들이 업데이트되지 않았을 가능성이 높습니다.
확인해볼 만한 좋은 장소네요. 데이터 탐색기를 다운로드하는 중입니다…
또 다른 흥미로운 데이터 포인트 - 다른 사이트에서는 모든 기능이 정상적으로 작동하고 있습니다. vote.hencommunity.quest
플러그인은 설치되어 있고, SELECT * FROM topic_embeds를 실행하면 8개의 결과가 조회되는데, 전부 이 vote.hencommunity.quest URL에서 온 것입니다. 작동하게 하려고 시도 중인 메인 hencommunity.quest 블로그에서는 아무것도 나오지 않습니다.