Overleaf の i18n 設定
このドキュメントでは、セルフホストの Overleaf インスタンスで国際化(i18n)を設定する方法について説明します。
- Overleaf インスタンスを単一の固定言語で運用する
- 複数の言語を有効にし、
www.overleaf.comと同様にユーザーが言語を動的に切り替えられるようにする
単一言語の設定
サイトの言語は環境変数OVERLEAF_SITE_LANGUAGE(Overleaf の 4.x 以前のバージョンでは SHARELATEX_SITE_LANGUAGE)で設定します。
サポートされている言語コードは次のとおりです。
en- 英語(デフォルト)es- スペイン語pt- ポルトガル語de- ドイツ語fr- フランス語cs- チェコ語nl- オランダ語sv- スウェーデン語it- イタリア語tr- トルコ語zh-CN- 中国語(簡体字)no- ノルウェー語da- デンマーク語ru- ロシア語ko- 韓国語ja- 日本語pl- ポーランド語fi- フィンランド語
config/variables.env に次の行を追加します。
config/variables.env
複数言語の設定
ユーザーがログアウトせずに言語を切り替えられるようにするには、ドメイン名に応じて異なる言語を提供するよう Overleaf インスタンスを設定する必要があります。 このセクションでは、次のことを前提としています。- プライマリドメインが
overleaftest.comである - ワイルドカード TLS 証明書(例:
*.overleaftest.com)を持っている localhostを使用していない(サブドメインベースの言語ルーティングに対応できないため)
dev-overleaf.com などのドメインを使用できます。
1
TLS プロキシの設定(Nginx)
Overleaf がユーザーのアクセスした言語ドメインを判別できるように、TLS リバースプロキシは元の Nginx の設定例を次に示します。
Host ヘッダーを転送する必要があります。次のディレクティブが含まれていることを確認してください。2
Cookie ドメインを設定する
言語を切り替えたときにユーザーがログアウトされないようにするには、言語ごとのサブドメイン間で Cookie を共有する必要があります。これにより、認証用 Cookie が
config/variables.env に次の行を追加します。config/variables.env
overleaftest.com 配下のすべてのサブドメインで有効になります。3
言語とドメインのマッピング
次に、この設定では次のようになります。
OVERLEAF_LANG_DOMAIN_MAPPING を使用して、言語コードとサブドメインの対応を定義します。設定例
config/variables.env
https://www.overleaftest.com→ 英語のインターフェースhttps://cn.overleaftest.com→ 簡体字中国語のインターフェース
4
Apex ドメインをリダイレクトする
最後に、Apex ドメイン(
overleaftest.com)をデフォルト言語のドメイン(www.overleaftest.com)にリダイレクトします。
