Skip to main content
Pod içinde konteynerin nginx’i 80 numaralı portta düz HTTP sunar. HTTPS pod’ların önünde sonlanır: ingress denetleyicinizde, bulut yük dengeleyicinizde veya Yatay ölçeklendirme sayfasındaki gibi HAProxy’de. Toolkit’in NGINX proxy’sinin (bin/init --tls, overleaf.rc içindeki NGINX_* ve TLS_*) bir karşılığı yoktur; Toolkit için bkz. TLS proxy.

Proxy’nin yapması gerekenler

  • WebSocket’leri (/socket.io) iletmek.
  • 10 dakikalık isteklere (uzun derlemeler) ve 50 MB’lık istek gövdelerine (yüklemeler) ya da MAX_UPLOAD_SIZE değerine izin vermek.
  • Pod’lara yönelik boşta keep-alive zaman aşımını, pod’daki nginx’in zaman aşımı olan 65 saniyenin altında tutmak.
  • X-Forwarded-For ve X-Forwarded-Proto: https göndermek.
  • Birden fazla replika ile bir kullanıcıyı tek bir replikada tutmak, bkz. Yatay ölçeklendirme.

ConfigMap

Güvenilir bir adresten X-Forwarded-Proto: https gelmezse Ayakaleaf Pro isteklerin HTTP üzerinden geldiğini düşünür ve güvenli oturum çerezini ayarlamaz: bu durumda oturum açma başarısız olur. OVERLEAF_SECURE_COOKIE değerini yalnızca kullanıcılar siteye gerçekten HTTPS üzerinden ulaşıyorsa ayarlayın; herhangi bir değer, "false" bile, bunu açar.

HAProxy örneği

HTTPS’yi Yatay ölçeklendirme sayfasındaki HAProxy DaemonSet’inde sonlandırmak için sertifikayı ve anahtarını tek bir PEM dosyasına ve bir Secret’a koyun:
Ardından 80-haproxy.yaml dosyasını değiştirin:
80-haproxy.yaml (changes)
HAProxy’nin yeniden başlaması için config-hash değerini artırın, ardından ConfigMap’i yukarıdaki gibi ayarlayın ve replikaları yeniden başlatın. Yönlendirme isteğin portunu korur: 80 ve 443 portlarındaki bir yük dengeleyiciye uygundur, ancak NodePort’larda http://host:30081 adresini https://host:30081 adresine gönderir. Önünde bir yük dengeleyici yoksa yönlendirme satırını çıkarın ve kullanıcılara https://...:30443 adresini verin.

Kubernetes üzerinde test edildi

Üç replikalı ve HTTPS’yi yukarıdaki gibi HAProxy’nin sonlandırdığı, OVERLEAF_SITE_URL değeri https:// olan ve OVERLEAF_SECURE_COOKIE ayarlı Kubernetes 1.37 üzerinde: kullanıcılar https:// bağlantılarıyla etkinleştirildi, Secure olarak işaretlenmiş bir oturum çereziyle oturum açtı, projeleri yükleyip derledi ve PDF’i aldı, kendi replikalarında kaldı, düzenleyicinin WebSocket’ini (wss) açtı ve HTTPS üzerinden Git ile klonlayıp gönderdi. NodePort üzerindeki http:// istekleri, yukarıda açıklandığı gibi aynı portla https:// adresine yönlendirildi.
Son değiştirilme tarihi 2 Kasım 2026