Discourse에는 "지원되지 않는 브라우저"를 감지하는 두 가지 방법이 있습니다. 이는 Discourse가 올바르게 작동하는 데 필요한 모든 API를 구현하지 않는 브라우저를 의미합니다.
첫 번째 방법은 JavaScript로 구현되며, 브라우저가 페이지를 렌더링할 수 없다고 판단할 때 자동으로 정적 HTML 보기로 전환되도록 합니다. 이 경우가 되어야 했지만, 게임 콘솔 브라우저에는 이 코드를 실행하지 못하는 특이점(아직 저에게도 알려지지 않은 부분)이 있어 빈 페이지가 렌더링됩니다.
두 번째 방법은 서버 측에서 실행되며, 이러한 상황을 위해 특별히 구현되었습니다. 특정 사용자 에이전트를 감지하면 브라우저가 정적 HTML 보기를 렌더링하도록 강제합니다. 이 방법은 Rails 콘솔을 통해 업데이트할 수 있는 숨겨진 사이트 설정을 사용합니다.
이 방법으로 문제가 해결될 것으로 생각합니다. 콘솔을 시작하려면 서버에 SSH로 접속하여 다음을 실행하세요:
Xbox Series 콘솔의 다음 주요 업데이트에서는 위 영상 링크에 표시된 대로 Chromium Edge로 전환될 예정이므로, 해당 부분에 Xbox만 추가한다면 다소 부정확한 감지가 될 수 있습니다. Trident/ 또는 Edge/ (새로운 Edge의 경우 ‘Edg/’)가 더 적합한 매칭 조건이 될 수 있습니다.
PS4 브라우저(또는 PS5의 ‘숨겨진’ 브라우저?)가 깨져 있는 것은 다소 이상합니다. Sony가 WebKit 포트를 업데이트하지 않았거나, Safari와 비교했을 때 무언가를 깨뜨린 것일까요?