Skip to main content
web サービスは、以下の設定に基づき、リクエストごとにブラウザーが使用したホスト名からインターフェースの言語を選択します。言語と設定についてはローカライズで説明しています。

1 つの言語

サブドメインでの複数言語

1

すべての言語ホストを Ayakaleaf Pro にルーティングする

言語ごとに DNS 名を追加し、それらすべてをカバーする証明書(例: *.example.com)を使って、すべてを Ayakaleaf Pro にルーティングします。Ingress またはロードバランサーは Host ヘッダーを変更せずに渡す必要があります。ingress-nginx と HAProxy はデフォルトでそのように動作します。ユーザーは標準ポートで言語ホストにアクセスする必要があります(https://cn.example.com:30443 ではなく https://cn.example.com)。Ayakaleaf Pro はポートを除いたホストで比較するためです。
2

ConfigMap

30-config.yaml (additions)
COOKIE_DOMAIN により、ログイン Cookie がすべての言語ホストで有効になります。JSON は単一引用符で囲んでください。OVERLEAF_LANG_DOMAIN_MAPPING の JSON が不正な場合、起動時に Pod のすべてのサービスが停止するため、再起動後に kubectl -n overleaf get pod で確認してください。

複数のレプリカ

言語は各リクエストのホスト名から決まるため、レプリカには依存しません。ロードバランサーのスティッキー Cookie は、ドメインを指定しない限りホスト名ごとに設定されるため、言語を切り替えるとユーザーが別のレプリカに移ることがあります。セッションは Redis にあるため、引き続き有効です。

Kubernetes でのテスト

Kubernetes 1.37 上で HAProxy の背後に置き、OVERLEAF_LANG_DOMAIN_MAPPING でサイトのホストを英語、de. ホストをドイツ語、NodePort :30081 付きの fr. ホストをフランス語に対応付けた状態でテストしました。サイトのホストは英語、de. ホストはドイツ語で表示され、ポート付きの fr. ホストは上記のとおり英語にフォールバックしました。
最終更新日 2026年11月2日