> ## Documentation Index
> Fetch the complete documentation index at: https://docs.plato.ae/llms.txt
> Use this file to discover all available pages before exploring further.

# HTTPS ve Örgü

> Caddy ters proxy ve PeerJS ağ sinyali.

# HTTPS ve Örgü

PC yazıcı sürücüsü, HTTPS'yi Caddy aracılığıyla ve PeerJS sinyalini `/mesh` aracılığıyla açığa çıkarabilir.

## HTTPS Koşullar

HTTPS yalnızca bunların tümü doğru olduğunda başlar:

* `features.httpsEnabled`, `true`'dir.
* `caddy.enabled`, `true`'dir.
* Çalışma zamanı platformu Windows'tur.
* Sertifikalar `assets/certs`'de mevcuttur.
* Caddy kurulabilir veya yeniden kullanılabilir.

HTTPS kurulumu başarısız olursa sürücü hatayı günlüğe kaydeder ve HTTP ile devam eder.

## Sertifika Dosyaları

Gerekli dosyalar:

```txt theme={null}
assets/certs/ca.crt
assets/certs/server.crt
assets/certs/server.key
```

Sürücü bunları Caddy çalışma klasörüne kopyalar:

```txt theme={null}
assets/caddy/ca.crt
assets/caddy/server.crt
assets/caddy/server.key
```

CA sertifikası şu adresten indirilebilir:

```txt theme={null}
http://<driver-ip>:8080/ca.crt
```

## Caddy Kurulumu

Caddy kurulumu şu sırayı kullanır:

1. Zaten `.installed` ile yüklenmişse `assets/caddy/bin/caddy.exe`'yi yeniden kullanın.
2. Paketlenmiş `caddy.exe`'yi bilinen yerel yollardan kopyalayın.
3. GitHub sürümü URL'den Caddy'yi indirin.

Yapılandırılmış Caddy sürümü varsayılan olarak `2.6.4`'dir.

## Oluşturulan Caddy dosyası

Sürücü şöyle bir Caddy dosyası yazar:

```txt theme={null}
{
  auto_https disable_redirects
}

plato-printer.local {
  reverse_proxy localhost:8080

  handle /mesh/* {
    reverse_proxy localhost:8080 {
      header_up Connection {http.request.header.Connection}
      header_up Upgrade {http.request.header.Upgrade}
    }
  }

  tls "assets/caddy/server.crt" "assets/caddy/server.key"
}
```

`caddy.httpsPort`, `443` değilse site adresi bağlantı noktasını içerir.

## Caddy Çalışma Zamanı

Caddy aşağıdakilerle bir alt süreç olarak çalışır:

* `XDG_DATA_HOME`, `assets/caddy/data` olarak ayarlandı
* `XDG_CONFIG_HOME`, `assets/caddy/config` olarak ayarlandı
* çalışma dizini `assets/caddy` olarak ayarlandı

Caddy beklenmedik bir şekilde çıkarsa sürücü `2000ms` gecikmeyle 5 defaya kadar yeniden dener.

## Örgü Sinyali

`features.meshEnabled` doğru olduğunda sürücü PeerJS'yi şu konumda bağlar:

```txt theme={null}
ws://<driver-host>:8080/mesh
wss://plato-printer.local/mesh
```

`GET /mesh-status` şunu döndürür:

* Mesh'in etkin olup olmadığı
* örgü yolu
* liman
* bağlı eş kimlikleri
* akran sayısı

Mesh yalnızca sinyal veriyor. Yazdırma işleri hâlâ HTTP uç noktalarını kullanıyor.

## Yaygın HTTPS Sorunları

| Belirti                                     | Muhtemel Neden                    | Düzeltmek                                                                   |
| ------------------------------------------- | --------------------------------- | --------------------------------------------------------------------------- |
| Tarayıcı HTTPS sürücüsünü URL engelliyor    | CA sertifikasına güvenilmiyor     | `ca.crt`'yi POS cihazına yükleyin.                                          |
| `https://plato-printer.local` çözümlenmiyor | DNS/ana bilgisayarlar eksik       | Sürücü IP'sine yerel DNS veya ana bilgisayar girişi ekleyin.                |
| Bağlantı noktası 443 kullanılamıyor         | Başka bir hizmet bunu kullanıyor  | Diğer hizmeti durdurun veya `caddy.httpsPort`'yi değiştirin.                |
| HTTPS, macOS/Linux'ta atlandı               | Kod yalnızca Windows'a yöneliktir | HTTP'yi geliştirme aşamasında kullanın veya Caddy'yi ayrı olarak test edin. |
| Windows 7 başlatma hatası                   | Caddy versiyonu `2.6.4` değil     | `caddy.version`'yi tekrar `2.6.4`'ye ayarlayın.                             |
