> For the complete documentation index, see [llms.txt](https://ayakaleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ayakaleaf-pro.ayaka.space/on-premises/tr/yapilandirma/overleaf-toolkit/localization.md).

# Yerelleştirme

### Overleaf i18 Yapılandırması

{% hint style="info" %}
Bu belge, kendi barındırdığınız bir için uluslararasılaştırmanın (i18n) nasıl yapılandırılacağını açıklar **Overleaf** örneğini.
{% endhint %}

Overleaf birçok dile çevrilmiştir. Uygun yapılandırmayla şunları yapabilirsiniz:

* Overleaf örneğinizi çalıştırın **tek, sabit bir dilde**, veya
* Etkinleştirin **birden çok dili**, kullanıcıların dilleri dinamik olarak değiştirmesine izin vererek, tıpkı `www.overleaf.com`.

***

#### Tek Dil Yapılandırması

Site dili, ortam değişkeni kullanılarak yapılandırılır `OVERLEAF_SITE_LANGUAGE`(veya `SHARELATEX_SITE_LANGUAGE` Overleaf sürümleri için **4.x ve öncesi**).

Desteklenen dil kodları şunlardır:

* `en` - İngilizce (varsayılan)
* `es` - İspanyolca
* `pt` - Portekizce
* `de` - Almanca
* `fr` - Fransızca
* `cs` - Çekçe
* `nl` - Hollandaca
* `sv` - İsveççe
* `it` - İtalyanca
* `tr` - Türkçe
* `zh-CN` - Çince (basitleştirilmiş)
* `no` - Norveççe
* `da` - Danca
* `ru` - Rusça
* `ko` - Korece
* `ja` - Japonca
* `pl` - Lehçe
* `fi` - Fince

İngilizce varsayılan dildir. Arayüz dilini değiştirmek için (örneğin, Basitleştirilmiş Çince'ye), aşağıdaki satırı şuraya ekleyin `config/variables.env`:

{% code title="config/variables.env" %}

```bash
OVERLEAF_SITE_LANGUAGE=zh-CN
```

{% endcode %}

Ardından yapılandırmayı uygulayın:

```bash
bin/up
```

Hizmetler yeniden başladıktan sonra, web arayüzü menülerindeki dil yeni ayarı yansıtmalıdır.

#### Çoklu Dil Yapılandırması

Kullanıcıların **oturumu kapatmadan dilleri değiştirmesine izin vermek için**Overleaf örneğinizin, alan adlarına göre farklı diller sunacak şekilde yapılandırılması gerekir.

Bu bölüm şunları varsayar:

* Birincil alan adınız `overleaftest.com`
* Bir **wildcard TLS sertifikası** (örn. `*.overleaftest.com`)
* Siz **kullanmıyorsunuz `localhost`** (çünkü alt alan adı tabanlı dil yönlendirmesini destekleyemez)

Yerel test için, şu gibi bir alan adı kullanabilirsiniz `dev-overleaf.com`.

{% stepper %}
{% step %}

### TLS Proxy Yapılandırması (Nginx)

TLS ters proxy'niz özgün `Host` başlığını iletmelidir; böylece Overleaf kullanıcının hangi dil alanına eriştiğini belirleyebilir.

Aşağıdaki yönergenin mevcut olduğundan emin olun:

```nginx
proxy_set_header Host $host;
```

İşte örnek bir Nginx yapılandırması:

<pre class="language-nginx"><code class="lang-nginx">server {
    listen 443 ssl;
    server_name    _; # Tümünü yakalar, bkz. http://nginx.org/en/docs/http/server_names.html
    server_name *.overleaftest.com;
    ssl_certificate /etc/nginx/ssl/nginx.crt;
    ssl_certificate_key /etc/nginx/ssl/nginx.key;
    ssl_protocols               TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers   on;
    # Cloudflare'ın şifre takımları kullanıldı https://github.com/cloudflare/sslconfig/blob/master/conf
    ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;

    # HSTS'yi (HTTP Strict Transport Security) etkinleştirmek için yapılandırma https://developer.mozilla.org/en-US/docs/Security/HTTP_Strict_Transport_Security
    # SSL stripping'i önlemek için https://en.wikipedia.org/wiki/SSL_stripping#SSL_stripping	
    add_header Strict-Transport-Security "max-age=31536000; includeSubdomains;";
    server_tokens off;
    add_header X-Frame-Options SAMEORIGIN;
    add_header X-Content-Type-Options nosniff;
    client_max_body_size 50M;

    location / {
        proxy_pass http://localhost:5000; # bunu docker kapsayıcısının dinlediği ana makine/bağlantı noktasına göre değiştirin.
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_read_timeout 3m;
        proxy_send_timeout 3m;
        
        # bunu nginx yapılandırmanıza ekleyin
<strong>        proxy_set_header Host $host;
</strong>    }
}
</code></pre>

{% endstep %}

{% step %}

### Çerez Alan Adını Yapılandırın

Kullanıcıların dilleri değiştirirken oturumlarının kapatılmasını önlemek için, çerezler dil alt alan adları arasında paylaşılmalıdır.

Aşağıdaki satırı şuraya ekleyin `config/variables.env`:

{% code title="config/variables.env" %}

```env
# Başındaki noktaya dikkat edin
COOKIE_DOMAIN=.overleaftest.com
```

{% endcode %}

Bu, kimlik doğrulama çerezlerinin `overleaftest.com`.
{% endstep %}

{% step %}

### Dil–Alan Adı Eşlemesi

Ardından, dil kodlarının alt alan adlarına nasıl eşleneceğini şunu kullanarak tanımlayın\
`OVERLEAF_LANG_DOMAIN_MAPPING`.

#### Örnek Yapılandırma

{% code title="config/variables.env" overflow="wrap" %}

```dotenv
OVERLEAF_LANG_DOMAIN_MAPPING='{"www": {"lngCode": "en","url": "https:\/\/www.overleaftest.com"},"cn": {"lngCode": "zh-CN","url": "https:\/\/cn.overleaftest.com"}}'
```

{% endcode %}

Bu yapılandırmayla:

* `https://www.overleaftest.com` → İngilizce arayüz
* `https://cn.overleaftest.com` → Basitleştirilmiş Çince arayüz

Bu eşlemeyi gerektiğinde ek diller ve alt alan adlarıyla genişletebilirsiniz.
{% endstep %}

{% step %}

### Kök Alan Adını Yönlendirin

Son olarak, kök alan adını (`overleaftest.com`) varsayılan dil alan adına (`www.overleaftest.com`).

<pre class="language-nginx"><code class="lang-nginx">server{
    listen 80;
    server_name overleaftest.com;
<strong>    return 301 https://www.overleaftest.com$request_uri;
</strong>}

server {
    listen 443 ssl http2;
    server_name overleaftest.com;
    ssl_certificate     /path/to/fullchain.cer;
    ssl_certificate_key /path/to/overleaftest.com.key;
<strong>    return 301 https://www.overleaftest.com$request_uri;
</strong>}
</code></pre>

{% endstep %}
{% endstepper %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://ayakaleaf-pro.ayaka.space/on-premises/tr/yapilandirma/overleaf-toolkit/localization.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
