글꼴 패밀리가 작동하지 않아요

글꼴 가족(font family)을 변경할 수 없다는 사실이 정말 짜증스럽습니다. Inter(또는 다른 글꼴 가족)을 선택해도 아무런 변화가 없고, Arial 글꼴을 변경할 수도 없습니다.

Google Font에서 @import를 사용하여 CSS 방법으로 Inter를 적용해 보기도 했는데, 작동하지 않았습니다! 실제로 글꼴을 어떻게 변경해야 하나요?

도움 주시면 감사하겠습니다.

필연적인 바보 같은 질문입니다. 페이지를 새로고침해 보셨나요?

브라우저 개발자 도구를 사용하여 포럼의 텍스트(예: 게시물 내용)를 선택하고 어떤 font-family가 설정되어 있는지 확인해 볼 수 있을까요?

캐시를 삭제하거나 브라우저를 강제 새로고침해 보십시오. 그러면 정상적으로 작동할 가능성이 높습니다.

모든 단계를 수행했습니다. 하지만 Arial을 제거할 수 없습니다.

@MihirR 감사합니다. 말씀하신 대로 해봤고, 사실 저는 항상 그렇게 하고 있어요. 그런데 여전히 모든 곳에 Arial이네요…

작동이 안 되는 이유를 확인하려면, Edit HTML/CSS에 다음 코드를 추가하여 새로운 글꼴이 나타나는지 확인해 보세요:

body {
  font-family: 'Times New Roman', serif !important; 
}

h1 {
  font-family: 'Courier New', monospace !important;
}

이상하네요.

안전 모드에서 사용할 때 어떻게 보일까요? (안전 모드에서는 커스텀 폰트가 유지되어야 합니다)

js 콘솔이나 네트워크 탭에 오류가 있나요?

어제 이걸 시도해 봤는데 H1에서만 작동합니다.

OMG… :man_facepalming:

새로 설치한 Discourse입니다. 이 문제를 해결하려고 노력하고 있습니다.

네, h1에만 적용됩니다. 모든 요소에 적용하려면 이렇게 사용할 수 있어요:

* {
  font-family: 'Times New Roman', serif !important; 
}

동작하지 않습니다. 위에서 보실 수 있듯이 어떤 HTTP 문제가 있는 것 같은데, 나머지는 모두 HTTPS라서 왜 그런지 전혀 모르겠습니다.

폰트가 https 대신 http로 제공되는 이유를 진단해 보시는 것이 좋습니다.

Discourse가 표준 설치 환경인가요?

* {
  font-family: 'Inter', sans-serif !important; 
} 

보시는 것처럼 H1이 작동한다면, 이것도 당연히 작동해야 합니다.

다음 명령어를 실행해 보세요: ./launcher rebuild app

또한, 테마를 사용 중이신가요? (새로 설치하셨다고 말씀하셨으므로 테마와 플러그인이 없는 상태일 것이라고 가정합니다.)

하지만 제가 몇 가지 폰트를 테스트해 본 결과 제 환경에서는 잘 작동하므로, 이는 Discourse 측의 문제가 아닙니다.

혹시 리버스 프록시를 사용 중이신가요?

안녕하세요 :wave:

그렇다면 force_https 사이트 설정이 자동으로 활성화되어 있습니다. 이는 레일스 콘솔에서 변경할 수 있는 숨겨진 사이트 설정입니다. 어딘가에서 활성화되지 않은 것일 수도 있습니다 :thinking:

한번 시도해 보세요 :slightly_smiling_face:

cd /var/discourse
./launcher enter app
rails c
SiteSetting.force_https=true
exit

저는 Discourse를 처음 사용해 봅니다. Docker/Github를 통해 설치했습니다. Standard가 무엇을 의미하는지 전혀 모르겠어요.

네, Fastpanel을 사용하고 있어서 리버스 프록시를 사용하고 있습니다. Fastpanel과 Discourse가 동일한 포트를 사용하므로 리버스 프록시를 사용해야 했습니다.

아니, 진짜야!!! 성공했어!!!
정말 너무 고마워, 구원해줘서!!

@Don 정말 감사해!!!

제 게시물에 링크가 있습니다. "standard install"은 그것이 무엇인지 설명하는 토픽으로 자동으로 링크됩니다 :slight_smile:

Don이 말한 내용을 좀 더 설명하자면, force https는 Discourse 관리자 설정에서 사용할 수 있었지만, 이제 더 이상 사용할 수 없습니다. HTTPS는 이미 오랫동안 (대략 2년 전부터?) Discourse에서 기본적으로 활성화되어 있기 때문입니다. 따라서 필요한 경우, 이제 숨겨진 이 설정은 예를 들어 명령줄을 통해 활성화해야 합니다.

역프록시(reverse proxy)를 사용하면 Discourse가 표준 설치(standard install)가 아니게 되어 이전에 겪은 문제가 발생했을 수 있다고 생각합니다 (확실히 알 수는 없지만요).

어쨌든, Discourse를 즐기세요 :discourse: :partying_face:

역시 프록시가 백엔드와 어떻게 통신하는지에 따라 달라집니다. 엔터프라이즈 버전이 아닌 Varnish의 경우, SSL 터미네이션 이후에는 SSL을 사용하지 않기 때문에, 역프록시에서 proxy_set_header X-Forwarded-Proto https;와 같은 헤더를 전송해야 합니다.

하지만 다음에 Nginx와 Discourse(그리고 다른 것들. 그렇지 않으면 제 기준에서는 너무 멍청한 일이 되니까요) 사이에 Varnish을 사용할 때 숨겨진 설정으로 들어가야 한다는 것을 알게 되어 좋습니다.

아니면, 제가 '강제(forcing)'의 의미를 완전히 잘못 이해하고 있는 걸까요?