OpenLiteSpeed ve LiteSpeed Enterprise Sunucularını Reverse Proxy Olarak Kullanmak

Sayfayı kopyala
💡 Özet (TL;DR):
- Amaç: 8080 gibi farklı bir portta çalışan bir uygulamayı (örneğin Go, Node.js veya Python uygulaması), 80/443 portunda hizmet veren OpenLiteSpeed veya LiteSpeed Enterprise web sunucusu arkasında çalıştırmak (Reverse Proxy).
- Adımlar:
- Sunucu yapılandırmasında (
Server Configuration) harici uygulama (External App) olarak bir Web Server tanımlanır ve uygulamanın çalıştığı port (örneğinlocalhost:8080) girilir.- Virtual Host (Vhost) ayarlarında
Contextsekmesine girilerek tipi Proxy olan yeni bir kayıt eklenir ve URI yönlendirmesi (örneğin/) tanımlanır.- Kritik Detay: Proxy'nin çalışabilmesi için ilgili Virtual Host'un root dizininin (
Doc Root) tanımlı ve geçerli olması, Vhost'un sorunsuz çalışıyor olması gerekir.- Not: Günümüzde dinamik mikroservis/konteyner yapılandırmaları için Traefik gibi çözümler popüler olsa da, LiteSpeed/OpenLiteSpeed kurulu geleneksel sunucularda bu yöntem geçerliliğini korumaktadır.
Geçmişte Nginx'i reverse proxy olarak kullanmayı tecrübe etmiş, hatta Nginx arkasına LiteSpeed Enterprise sunucusunu yerleştirmiştim. Fakat LiteSpeed Enterprise ve OpenLiteSpeed uzun süredir bir numaralı sunucu tercihim olduğu için bugün bir başka sunucuyu OpenLiteSpeed arkasına almam gerekti ve bu işlemi yaparken LiteSpeed kullanmanın tadına bir kez daha vardım. LiteSpeed'i reverse proxy olarak kullanmak da inanılmaz kolaydır.
Ben bu işlemi geliştirme ortamımda / yerelde, OpenLiteSpeed 1.7.14 sürümünde gerçekleştirdim; LiteSpeed Enterprise 6 sürümü ile de aynı şekilde çalıştığını teyit ettim.
Amacım ise 8080 portunda çalışan Go uygulamama doğrudan 80 portundan erişebilmekti. Bunun için 80 portunda çalışan OpenLiteSpeed'i reverse proxy olarak kullanmam gerekiyordu.
Adım 1: Sunucu Ayarları > Harici Uygulamalar > Web Sunucusu Ekleme
- OpenLiteSpeed panelindeki sol menüden Server Configuration bağlantısına tıklıyoruz.
- External App sekmesine tıklıyoruz.
- Sağ taraftaki + düğmesine basarak yeni uygulama ekleme ekranını açıyoruz.
- Type açılır kutusunda Web Server seçeneğini seçiyoruz.
- Name bölümüne sunucumuz için bir isim veriyoruz.
- Address bölümüne uzak sunucunun adresini yazıyoruz (benim örneğimde
localhost:8080). - Max Connections alanına ben
100yazdım; siz isteğe bağlı olarak 1 - 2000 arası bir değer girebilirsiniz. - Initial Request Timeout (secs) alanına ben
60yazdım; siz 1'den büyük herhangi bir rakam yazabilirsiniz. - Retry Timeout (secs) alanına ben
60yazdım; 0'dan büyük herhangi bir rakam yazabilirsiniz.
Bu işlemi yaptığımızda sunucu genelinde geçerli bir harici web sunucusu tanımlamış olduk. (Bunu Virtual Host özelinde de yapabilirsiniz).
Adım 2: Vhost Ekranında Reverse Proxy Ayarının Yapılması
Şimdi eğer yoksa bir Virtual Host (Vhost) oluşturun. Vhost'un proxy'den bağımsız olarak çalışabiliyor olması gerekir. Örneğin Doc Root belirtilmemişse, geçersizse veya herhangi başka bir ayarı hatalıysa Vhost çalışmadığı için proxy seçeneği de aktif olmuyor. İlk denememde 3–5 dakika çalışmama nedenini aramak zorunda kaldım.
Çalışır durumda bir Vhost'umuz varsa şu adımları takip ediyoruz:
- Virtual Host ayarlarına girin.
- Context sekmesine girin.
- Bu sekmede herhangi bir kayıt varsa silin.
- Yeni bir kayıt oluşturmak için sağ üst köşedeki artı (+) düğmesine basın.
- Tip olarak Proxy seçin ve sonraki ekrana ilerleyin.
- URI kısmına
/yazarsanız kök dizin ve altındaki tüm dizinleri yönlendirmiş olursunuz. Örneğin/blogyazarsanız blog dizini ve altındaki dizinleri yönlendirmiş olursunuz (kök dizini LiteSpeed ile sunmaya devam ederken,/blogdizinini başka bir sunucuya veya başka bir Vhost'a yönlendirmenizi sağlar). - Web Server bölümünde önceki adımda oluşturduğunuz Web sunucusunu seçin ve ayarları kaydedin.
- Son olarak LiteSpeed sunucunuzu yeniden başlatın.
Veeee bu kadar basit! Artık ilgili Virtual Host'u localhost:8080 için reverse proxy olarak ayarlamış olduk.
Sonuç: LiteSpeed'i seviyoruz!
Nginx ve LiteSpeed Reverse Proxy Karşılaştırması
| Özellik | Nginx | OpenLiteSpeed / LiteSpeed Enterprise |
|---|---|---|
| Yapılandırma Yöntemi | Konfigürasyon dosyaları üzerinden (nginx.conf) manuel yazılır. | WebAdmin konsolu (GUI) üzerinden görsel arayüzle kolayca yapılır. |
| Dinamik Yeniden Başlatma | systemctl reload nginx komutuyla yapılır. | Arayüz üzerinden tek tıkla "Graceful Restart" ile yapılır. |
| Performans (Statik + Dinamik) | Yüksek performanslıdır, hafif ve hızlıdır. | LSCache entegrasyonu sayesinde özellikle dinamik içeriklerde çok hızlıdır. |
Güncel Alternatifler ve Traefik Geçişi
Yazıyı kaleme aldığım dönemde OpenLiteSpeed ve LiteSpeed Enterprise sunucuları projelerimin vazgeçilmez birer parçasıydı. Ancak teknoloji ve mimariler hızla evriliyor.
Günümüz itibarıyla (özellikle Docker, Kubernetes ve mikroservis odaklı modern stack'lerimde) reverse proxy olarak artık Traefik kullanmayı tercih ediyorum. Traefik, özellikle konteyner tabanlı altyapılarda servisleri otomatik olarak keşfedebilmesi (auto-discovery) ve dinamik yapılandırma yeteneği sayesinde modern projelerde işleri inanılmaz derecede kolaylaştırıyor.
Eğer benzer bir arayış içindeyseniz, LiteSpeed dışında değerlendirebileceğiniz diğer popüler reverse proxy alternatifleri şunlardır:
- Traefik: Konteyner dostu, dinamik yönlendirme ve otomatik SSL (Let's Encrypt) yönetimi sunan modern proxy.
- Caddy: Konfigürasyonu son derece basit, varsayılan olarak HTTPS/SSL entegrasyonu ile gelen Go tabanlı modern web sunucusu.
- HAProxy: Özellikle yüksek trafikli yük dengeleme (load balancing) ve TCP/HTTP proxy ihtiyaçları için endüstri standardı olan son derece hızlı bir araç.
- Nginx: Geleneksel ve kararlı yapısıyla hâlâ en yaygın kullanılan reverse proxy çözümü.
Yine de geleneksel sunucu kurulumlarında ve LiteSpeed ekosisteminde kalmak istediğiniz senaryolarda, yukarıda anlattığım WebAdmin üzerinden proxy kurma yöntemi en pratik referanslardan biri olarak geçerliliğini koruyor.
Bu Yazıda Yapılan Değişiklikler
- 11.05.2022: Yazı özeti düzenlendi.
- 20.06.2026: Sunucu isimleri ve terimler standartlaştırıldı, imla düzeltmeleri yapıldı, TL;DR özet, karşılaştırma tablosu ve modern alternatifler (Traefik vb.) eklendi.
