> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Lokalisering

> Kör en Kubernetes-driftsättning på ett språk, eller på flera språk på egna underdomäner.

Tjänsten **web** väljer gränssnittsspråk utifrån inställningarna nedan, per förfrågan utifrån det värdnamn som webbläsaren använde. Språken och inställningarna beskrivs i [Lokalisering](https://ayakaleaf-pro.mintlify.site/sv/on-premises/configuration/overleaf-toolkit/localization.md).

| | |
| - | - |
| Tjänst | web, i varje Ayakaleaf Pro-pod; läses när web startar |
| Nätverk | ett värdnamn per språk, alla dirigerade till Ayakaleaf Pro |
| Periodiska jobb | inga |

### Ett språk

```yaml theme={null}
  OVERLEAF_SITE_LANGUAGE: zh-CN
```

```bash theme={null}
kubectl apply -f 30-config.yaml
kubectl -n overleaf rollout restart deployment/overleaf     # or statefulset/overleaf
```

### Flera språk på underdomäner

**1. Dirigera varje språkvärd till Ayakaleaf Pro**

Lägg till ett DNS-namn per språk och dirigera alla till Ayakaleaf Pro med ett certifikat som täcker dem, till exempel `*.example.com`. Din ingress eller lastbalanserare måste skicka vidare `Host`-huvudet oförändrat, vilket ingress-nginx och HAProxy gör som standard.

Användarna måste nå språkvärdarna på standardportarna (`https://cn.example.com`, inte `https://cn.example.com:30443`): Ayakaleaf Pro jämför värden utan porten.

**2. ConfigMap**

```yaml title="30-config.yaml (additions)" wrap theme={null}
  OVERLEAF_SITE_URL: https://www.example.com
  COOKIE_DOMAIN: .example.com
  OVERLEAF_LANG_DOMAIN_MAPPING: '{"www": {"lngCode": "en", "url": "https://www.example.com"}, "cn": {"lngCode": "zh-CN", "url": "https://cn.example.com"}}'
```

`COOKIE_DOMAIN` gör att inloggningscookien fungerar på alla språkvärdar. Sätt JSON-värdet inom enkla citattecken. Ogiltig JSON i `OVERLEAF_LANG_DOMAIN_MAPPING` stoppar alla tjänster i podden vid uppstart, så kontrollera `kubectl -n overleaf get pod` efter omstarten.

### Flera repliker

Språket kommer från värdnamnet i varje förfrågan, så det beror inte på repliken. Lastbalanserarens sticky-cookie sätts per värdnamn om du inte ger den en domän, så ett språkbyte kan flytta en användare till en annan replik; sessionen ligger i Redis och förblir giltig.

### Testat på Kubernetes

På Kubernetes 1.37 bakom HAProxy, med `OVERLEAF_LANG_DOMAIN_MAPPING` som mappade webbplatsens värd till engelska, en `de.`-värd till tyska och en `fr.`-värd med NodePort `:30081` till franska: webbplatsens värd visade engelska, `de.`-värden tyska och `fr.`-värden med porten föll tillbaka på engelska, enligt beskrivningen ovan.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.