Skip to main content
web 서비스는 아래 설정에 따라 브라우저가 사용한 호스트 이름을 기준으로 요청마다 인터페이스 언어를 선택합니다. 언어와 설정은 현지화에 설명되어 있습니다.

단일 언어

서브도메인에서 여러 언어 사용

1

모든 언어 호스트를 Ayakaleaf Pro로 라우팅

언어마다 DNS 이름을 추가하고, 이를 모두 포괄하는 인증서(예: *.example.com)와 함께 모두 Ayakaleaf Pro로 라우팅하세요. 인그레스 또는 로드 밸런서는 Host 헤더를 변경하지 않고 전달해야 하며, ingress-nginx와 HAProxy는 기본적으로 그렇게 동작합니다.사용자는 표준 포트로 언어 호스트에 접근해야 합니다(https://cn.example.com:30443이 아닌 https://cn.example.com). Ayakaleaf Pro는 포트를 제외한 호스트를 비교합니다.
2

ConfigMap

30-config.yaml (additions)
COOKIE_DOMAIN을 설정하면 로그인 쿠키가 모든 언어 호스트에서 동작합니다. JSON은 작은따옴표로 감싸세요. OVERLEAF_LANG_DOMAIN_MAPPING의 JSON이 유효하지 않으면 시작 시 파드의 모든 서비스가 중지되므로, 재시작 후 kubectl -n overleaf get pod로 확인하세요.

여러 레플리카

언어는 각 요청의 호스트 이름에서 결정되므로 레플리카와 무관합니다. 로드 밸런서의 고정(sticky) 쿠키는 도메인을 지정하지 않는 한 호스트 이름별로 설정되므로, 언어를 전환하면 사용자가 다른 레플리카로 이동할 수 있습니다. 세션은 Redis에 있으므로 계속 유효합니다.

Kubernetes에서의 테스트

HAProxy 뒤의 Kubernetes 1.37에서 OVERLEAF_LANG_DOMAIN_MAPPING으로 사이트 호스트를 영어에, de. 호스트를 독일어에, NodePort :30081이 붙은 fr. 호스트를 프랑스어에 매핑했습니다. 위에서 설명한 대로 사이트 호스트는 영어, de. 호스트는 독일어로 표시되었고, 포트가 붙은 fr. 호스트는 영어로 대체되었습니다.
마지막 수정일 2026년 11월 2일