# Kendi güncelleme sunucunuzu kurun

> Paylaşımlı hostingde adım adım FluxWP güncelleme sunucusu: GitHub bağlantısı, site anahtarları, anında yayın.

Kaynak: https://fluxwp.com/tr/wiki/guncelleme-sunucusu/  
Bölüm: Kurulum  
Son güncelleme: 2026-11-05

FluxWP'nin resmi güncelleme sunucusu `https://updater.fluxwp.com`. Aynı kodla kendi sunucunuzu kurarsanız kendi tema ve eklentilerinizi (private GitHub depoları dahil) sitelerinize WordPress'in normal güncelleme ekranından dağıtırsınız. Veritabanı gerekmez, paylaşımlı hostingde çalışır.

## Nasıl çalışır

```text
GitHub depoları  (push → Actions → <slug>-v<sürüm> release + <slug>.zip)
        │  token (yalnız private depolar için, Contents: Read-only)
        ▼
Güncelleme sunucusu   /admin · /v1/check · /v1/download/<slug>/<sürüm>.zip
        ▲  anahtarsız: public paketler · anahtarla: + private paketler
WordPress siteleri (FluxWP Panel)
```

- **Public depolar**: paketler herkese anahtarsız sunulur.
- **Private depolar**: paketler yalnız site anahtarıyla, anahtara tanımlı paketler kadar görünür.
- GitHub token yalnız sunucuda durur, sitelere hiç gitmez.

## Gerekenler

- PHP 7.4+ çalışan bir alt alan adı (ör. `updater.example.com`) ve SSL.
- Yazılabilir bir `data/` klasörü (zip içinde gelir).
- Private depo sunacaksanız GitHub fine-grained token.

## Adım adım kurulum (paylaşımlı hosting)

### 1. Alt alan adı açın

Hosting panelinde `updater.example.com` gibi bir alt alan adı açın, normal PHP sitesi olarak bırakın ve **SSL**'i açın. DNS yayılınca adres tarayıcıda açılmalı.

### 2. Sunucu dosyalarını yükleyin

[FluxWP/updater Releases](https://github.com/FluxWP/updater/releases/latest) sayfasından `flx-update-server.zip`'i indirin. Dosya yöneticisiyle alt alan adının kök klasörüne yükleyip orada açın. `index.php` doğrudan kökte olmalı.

### 3. İlk kurulumu hemen yapın

`https://updater.example.com/admin` adresini açın. **İlk kurulum** ekranında kullanıcı adı ve parola belirleyin.

> [!WARNING]
> İlk kurulumu yapan yönetici olur. Dosyaları yükler yüklemez bu adımı tamamlayın.

### 4. GitHub'ı bağlayın

**GitHub** kartında:

1. Sunulacak **public** ve **private** depoları seçin. Listede olmayan `owner/repo` yazıp Enter ile eklenir.
2. Private depo varsa token'ı yapıştırın. Token: GitHub › Settings › Developer settings › **Fine-grained tokens**, yalnız ilgili private depolar, izin **Contents: Read-only**. Yalnız public depo sunacaksanız token gerekmez.
3. **Kaydet ve test et**. Kart **Bağlı** göstermeli.

Varsayılan depo yoktur; hangi depoların sunulacağına siz karar verirsiniz.

### 5. Siteleri ekleyin (private paketler için)

**Site ekle**: ad, private paketler (hepsi ya da seçili depolar), kanal (stable / beta), **Anahtar üret**.

Anahtar **yalnız bir kez** gösterilir. Kopyalayın ve *Bu anahtarı test et* ile deneyin. Sunucuda anahtarın yalnız sha256 özeti saklanır; kaybolan anahtar geri alınamaz, site silinip yeniden eklenir.

Anahtarsız bağlanmış bir siteye sonradan anahtar vermek için **Genel bakış › Bağlanan siteler**'de satırdaki **Anahtar ver**'i kullanın; site anahtarı bir sonraki kontrolde alır.

### 6. Siteleri sunucuya bağlayın

Her WordPress sitesinde:

1. FluxWP Panel'i kurun ([Hızlı başlangıç](https://fluxwp.com/tr/wiki/hizli-baslangic/)).
2. **FluxWP Panel › Ayarlar**'da **Sunucu adresi**'ne `https://updater.example.com` yazın.
3. Private paket kullanacaksanız anahtarı yapıştırın.
4. **Kaydet ve kontrol et**.

### 7. Anında yayın (isteğe bağlı)

Sunucu yeni sürümleri en geç 5 dakikada görür. Hemen görünsün isterseniz:

1. Sunucu panelinde **Secret üret**.
2. Paket deposunda **Settings › Secrets and variables › Actions**'a `UPDATE_WEBHOOK_SECRET` adıyla ekleyin.

Paketlerinizi GitHub'dan otomatik yayınlamak için: [GitHub depoları ve otomatik yayın](https://fluxwp.com/tr/wiki/guncelleme-sunucusu/github-ve-yayin/).

## Kontrol

| Adres | Beklenen |
|---|---|
| `https://<sunucu>/` | `{"ok":true,…,"configured":true,"public":true}` |
| `https://<sunucu>/data/settings.json` | 403 (dışarıya kapalı) |
| `https://<sunucu>/admin` | Giriş sayfası |

## Sunucuyu güncellemek

Yeni `flx-update-server.zip`'i aynı klasöre açın. Ayarlar zip'te olmayan `data/settings.json`'da durur, kaybolmaz.

## Panelde neler var

- **Genel bakış**: son 7/30/90 günde güncelleme denetleyen siteler, indirmeler, aktarılan veri, ülke haritası, bağlanan siteler.
- **Kaynaklar**: disk, GitHub API kotası, paket önbelleği, PHP sınırları; eski zip ve günlük temizliği.
- **Güvenlik**: acil durdurma (tüm uçlar 503), anahtarsız dağıtımı kapatma, ülke engelleme ya da yalnız seçili ülkelere izin.
- **Zip saklama**: paket başına son 5 sürüm; daha eskisi istenirse GitHub'dan yeniden alınır.

> [!NOTE]
> IP adresleri istatistiklere yazılmaz. Ülke, istek anında yerel veritabanından bulunur ve yalnız ülke kodu saklanır.

## Sorun giderme

| Belirti | Bakılacak yer |
|---|---|
| Sitede "Could not resolve host" | Sunucu adresi yanlış ya da DNS henüz yok. |
| Sitede "Site anahtarı geçersiz" | /admin › *Var olan bir anahtarı test et*; site silindiyse yeniden ekleyin. |
| Sitede "HTTP 502" | GitHub kartı kırmızı mı: token süresi dolmuş ya da yanlış. |
| Yeni sürüm görünmüyor | Deponun Actions işi yeşil mi; /admin › *Paketleri yeniden oku*. |
| Kayıtlar | `data/access.log`, PHP hata günlüğü. |

Docker ya da Coolify ile kurmak için: [Docker, Coolify ve Nginx ile kurulum](https://fluxwp.com/tr/wiki/guncelleme-sunucusu/docker/).
