Nginx Web Sunucusunu Yapılandırma
ServBay, yerleşik Nginx Web sunucusu paketini kolayca yönetip yapılandırmanız için pratik bir yol sunar. ServBay’in sezgisel grafik kullanıcı arayüzüyle, çeşitli yerel geliştirme projelerine uygun şekilde Nginx’in temel ayarlarını rahatlıkla düzenleyebilirsiniz.
Nginx Yapılandırmasına Erişim
- ServBay uygulamasını açın.
- Sol taraftaki gezinme çubuğunda
Web Sunucusu
na tıklayın. Nginx
sekmesini seçin.
Nginx’in yapılandırma arayüzü aşağıdaki gibi görünecektir:
Temel Yapılandırma Seçeneklerinin Açıklaması
Aşağıda, Nginx yapılandırma arayüzünde bulunan her parametrenin ayrıntılı açıklamalarını bulabilirsiniz:
Temel Ağ Ayarları
- HTTP Port: Nginx'in dinlediği HTTP protokolü portu, varsayılan olarak
80
. - HTTPS Port: Nginx'in dinlediği HTTPS protokolü portu, varsayılan olarak
443
. - Worker Connections: Her bir Nginx çalışma sürecinin (worker process) aynı anda kurabileceği maksimum bağlantı sayısıdır. Bu değer, Nginx’in eşzamanlı işlem kapasitesini etkiler.
10240
nispeten yüksek bir değerdir ve yüksek trafikli senaryolar için uygundur.
Performans ve Sınırlar
- Client Max Body Size: İstemciden gelen bir istekte izin verilen en büyük gövde boyutu. Örneğin, dosya yükleme boyutunu sınırlandırmak için kullanılır.
2048m
, maksimum 2GB’lık bir istek gövdesine izin verildiğini gösterir. - KeepAlive Timeout: İstemci ile sunucu arasındaki Keep-Alive bağlantısının etkin kalacağı zaman (saniye cinsinden).
65
saniye, istemci bu süre içinde yeni bir istek göndermezse sunucunun bağlantıyı kapatacağını belirtir. - TCP Nodelay:
TCP_NODELAY
seçeneğini etkinleştirir veya devre dışı bırakır. (Açık) olduğunda küçük veri paketlerinin gecikmesini azaltır; genellikle yüksek gecikmeli ağlarda veya gerçek zamanlı etkileşim gereken uygulamalarda önerilir.
HTTP Protokol Sürümü
- HTTP/2: HTTP/2 protokol desteğini etkinleştirir veya devre dışı bırakır. HTTP/2, çoklu bağlantı, başlık sıkıştırma gibi teknolojilerle performansı artırır. Etkinleştirilmesi tavsiye edilir.
- HTTP/3: HTTP/3 (QUIC) protokol desteğini etkinleştirir veya devre dışı bırakır. HTTP/3, UDP tabanlı yeni nesil bir internet protokolüdür; performans ve güvenilirliği daha da artırır. ServBay sürümünüz destekliyorsa ihtiyaca göre açabilirsiniz.
FastCGI Ayarları (PHP ve benzeri arka uç işlemleri için)
- FastCGI Connect Timeout: Nginx’in FastCGI sunucusuna (örneğin PHP-FPM) bağlanmayı bekleyeceği zaman aşımı süresi (saniye).
- FastCGI Send Timeout: Nginx’in FastCGI sunucusuna isteği gönderirken yaşayacağı zaman aşımı süresi (saniye).
- FastCGI Read Timeout: Nginx’in FastCGI sunucusundan yanıt beklediği zaman aşımı süresi (saniye).
Bu zaman aşımı ayarları, özellikle uzun süren PHP betikleri için önemlidir. Kesintili isteklerin önüne geçmek için uygulamanın gerçek ihtiyacına göre ayarlanmalıdır.
Gzip Sıkıştırma
- Gzip: Gzip sıkıştırmayı etkinleştirir veya devre dışı bırakır. Etkinleştirildiğinde, Nginx istemciye yanıtı göndermeden önce sıkıştırarak veri iletimini azaltır ve sayfa yükleme hızını artırır. Şiddetle önerilir.
- Gzip Comp Level: Gzip sıkıştırma seviyesi;
1
(en hızlı, en düşük oran) ile9
(en yavaş, en yüksek oran) arasında olabilir. Genellikle1
veya2
, hız ve sıkıştırma oranı açısından en iyi dengedir. - Gzip Types: Gzip sıkıştırmasının uygulanacağı içerik türleri (MIME tipleri) belirtilir. Varsayılan olarak yaygın metin, CSS, JavaScript, XML ve RSS türlerini kapsar. Gerektiğinde tür ekleyip çıkartabilirsiniz.
SSL/TLS Ayarları (HTTPS için)
- SSL Protocols: Kullanılmasına izin verilen SSL/TLS protokol sürümlerini tanımlar.
TLSv1.2 TLSv1.3
günümüzde en güvenli seçeneklerdir; eski ve güvensiz protokoller (SSLv3, TLSv1.0, TLSv1.1) devre dışı bırakılmıştır. - SSL Prefer Server Ciphers: (Açık) hale getirmek, SSL/TLS el sıkışmasında sunucunun kendi şifreleme algoritması listesini istemcinin listesinden önce kullanmasını sağlar. Daha güçlü şifreleme algoritmalarının kullanılması için önerilir.
- SSL Ciphers: Sunucunun hangi şifreleme paketlerini kullanabileceğini tanımlar. Güçlü ve modern şifreleme paketlerinin seçilmesi HTTPS güvenliği için kritiktir. ServBay, optimize edilmiş bir varsayılan liste sunar.
Diğer Ayarlar
- Server Tokens: Nginx’in hata sayfalarında ve
Server
başlığında sürüm bilgisini gösterip göstermeyeceğini belirler.On
olarak ayarlandığında Nginx’in tam sürüm numarası görünür;Off
olarak ayarlandığında yalnızcanginx
ifadesi görüntülenir. Daha güvenli olması için genellikle kapalı tutulur. - Index: Bir dizine yönelik isteklerde Nginx’in sırasıyla arayacağı varsayılan indeks dosya isimlerini tanımlar. Örneğin:
index.html index.htm index.php
; Nginx önceindex.html
’ü, yoksaindex.htm
’i, sonra da diğerlerini deneyecektir.
Kaydetme ve Sıfırlama
- Reset: Bu buton, tüm Nginx yapılandırmasını ServBay’in varsayılan ayarlarına geri döndürür.
- Save: Yaptığınız tüm Nginx yapılandırması değişikliklerini kaydeder. Kaydetme sonrası ServBay genellikle bu değişiklikleri otomatik olarak uygular. Nginx çalışıyorsa, tüm değişikliklerin etkin olması için kısa süreliğine yeniden başlatmanız gerekebilir.
Önemli Notlar
- Buradaki değişiklikler, Nginx’in küresel yapılandırmasını (
nginx.conf
içindekihttp
bloğuyla ilgili ayarlar) etkiler. Belirli bir siteye (Server Block veya sanal host) ait ayarlar (örneğinserver_name
,root
,location
kuralları) genellikleWeb Siteleri
eklenirken veya düzenlenirken yapılır. - Eğer yapılandırma arayüzünün alt bölümünde "Service Nginx is not enabled" uyarısı görüyorsanız, bu Nginx’in şu anda çalışmadığı anlamına gelir. Yapılandırmaları yine de düzenleyip kaydedebilirsiniz, ancak yaptığınız değişiklikler Nginx’i bir sonraki başlatışınızda etkin olur. Nginx’i ServBay ana panelinden veya
Paketler
menüsünden başlatabilirsiniz.
Özet
ServBay, Nginx Web sunucusunun yapılandırma sürecini kolaylaştırır ve geliştiricilere grafik arayüz üzerinden önemli ayarları hızla düzenleme imkanı tanır. Bu seçenekleri anlayıp doğru şekilde yapılandırarak, Nginx’in performansını, güvenliğini ve işlevselliğini en üst düzeye çıkarabilir, yerel web geliştirme iş akışınızı daha verimli hale getirebilirsiniz.