Apache’nin tek başına hizmet verdiği cPanel sunucularda trafik arttıkça performans sorunları ortaya çıkabilir. Nginx’i Apache’nin önünde konumlandırmak, istekleri filtreleyip optimize ederek CPU ve RAM kullanımını daha dengeli bir yapıya taşır.
Reverse Proxy Çalışma Mantığı
Kurulum öncesinde sistemin nasıl işlediğini anlamak önemlidir. Klasik sistemde ziyaretçi doğrudan Apache sunucusuna bağlanır. Bizim kuracağımız modelde ise trafiği önce Nginx karşılar. Nginx resim ve benzeri hazır dosyaları direkt sunarken dinamik PHP isteklerini arka planda çalışan Apache birimine gönderir.
Client → Nginx (80/443) → Apache (8080) → PHP-FPM
Bu yapıyı cPanel olmadan doğrudan işletim sistemine kurmayı planlıyorsanız AlmaLinux Üzerinde Apache + Nginx Proxy Kurulumu rehberinden destek alabilirsiniz.
Sunucu Gereksinimleri Listesi
Kurulum öncesi kontrol listemiz şu şekildedir
- AlmaLinux 8/9 veya CloudLinux 7/8 işletim sistemi
- cPanel v88 veya daha yeni bir sürüm
- EasyApache 4 aktifliği ve root SSH yetkisi
- Sunucuda Engintron veya NginxCP gibi ek yazılımların olmaması
ea-nginx Paketinin Kurulumu
Resmi paket olan ea-nginx ile sunucu mimarisini güncelliyoruz. SSH üzerinden root girişi yaptıktan sonra şu kodu yürüterek paketi sisteme dahil edin.
dnf install ea-nginxBu işlem tamamlandığında sistem otomatik olarak Nginx’i yükler, Apache’yi 8080 portuna çeker ve proxy zincirini oluşturur. Ardından, tüm mevcut konfigürasyonların Nginx ile uyumlu hale gelmesi için şu komutu çalıştıralım.
/scripts/ea-nginx config --allSistem aktif olduğunda sunucudaki her site hız kazanmış olur. Yeni bir proje başlatmayı düşünüyorsanız CPanel Üzerinden Alt Domain Nasıl Açılır içeriğimiz üzerinden süreci en baştan doğru kurgulayabilirsiniz.
Nginx Manager Ve Kullanıcı Yetkilendirmesi
Yapılandırmayı tamamlamak için hem ana paneli hem de kullanıcı arayüzlerini kontrol ediyoruz. WHM tarafındaki NGINX Manager bölümünde servisi Running statüsünde gördüğümüzden emin olmalıyız. Özel ayar gerektiren hesapları User Settings üzerinden listeden çıkarabiliyoruz. Kullanıcı memnuniyetini artırmak için Feature Manager bölümüne gidip Nginx Manager seçeneğini aktif ederek kullanıcıların kendi yönetim araçlarına ulaşmasını sağlıyoruz.

Böylece kullanıcılar kendi cPanel arayüzlerinde NGINX Caching ikonunu görebilir, önbelleği temizleyebilir.

Dosya Yapısı
Özelleştirme işlemlerini cPanel’in izin verdiği dosya yolları üzerinden yürütüyoruz. Ana ayarların bulunduğu dosya /etc/nginx/conf.d/ea-nginx.conf olarak belirlenmiştir. Kullanıcı bazında farklı kurallar uygulamak için /etc/nginx/conf.d/users/kullaniciadi.conf yolunu kullanmalıyız. Tek bir alan adına özel kural seti eklemek istediğimiz durumlarda ise özel kural alanını oluşturup içine .conf dosyamızı yerleştirerek işlemi sonuçlandırıyoruz.
mkdir -p /etc/nginx/conf.d/users/kullaniciadi/domain.com/
nano /etc/nginx/conf.d/users/kullaniciadi/domain.com/ozel.confDosya içeriğine örnek bir proxy kuralı ekleyelim.
location /api/ {
proxy_pass http://127.0.0.1:8080;
proxy_cache_bypass $http_cookie;}Ayarlar ve Performans
Sunucu bazlı Nginx yapılandırmasını yönetmek için cPanel’in sunduğu resmi JSON dosyasını baz alıyoruz. /etc/nginx/ea-nginx/settings.json dosyasında gerekli değişiklikleri yaparak eşzamanlı bağlantı limitlerini ve zaman aşımı ayarlarını yapılandıralım. Böylece sunucunun çalışma performansını en ince ayrıntısına kadar kontrol edebiliyoruz.
{ "keepalive": "64",
"keepalive_timeout": "75",
"keepalive_requests": "500"}Değişikliklerin ardından konfigürasyonu yeniden oluşturup servisi yeniden başlatalım.
/usr/local/cpanel/scripts/rebuild_nginx_conf
systemctl restart nginxMicro-Caching Ve Gzip Uygulaması
Yoğun trafik anlarında sistemi korumak için Micro-Caching tekniğini uyguluyoruz. Bu yöntemle dinamik içerikleri 1 saniye gibi çok kısa sürelerle önbelleğe alarak Apache üzerindeki yükü düşürüyoruz. Böylece sunucu kaynakları anlık dalgalanmalardan etkilenmeden stabil kalmaya devam ediyor.
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=microcache:10m max_size=100m inactive=60m;
location / {
proxy_cache microcache;
proxy_cache_valid 200 1s;
proxy_pass http://127.0.0.1:8080;}Ayrıca veri iletim hızını artırmak için Gzip sıkıştırmayı aktif hale getirelim.
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml;Güvenlik, SSL ve IP Yönetimi
ea-nginx mimarisinde SSL sertifikaları cPanel aracılığıyla yönetilmeye devam eder ve sistem bunları kendiliğinden algılar. Apache sunucusunun gelen ziyaretçi IP adreslerini şaşırmadan kaydedebilmesi için mod_remoteip modülünün aktifliğini denetliyoruz. Aşağıdaki komut yardımıyla modülün durumunu hemen kontrol edebilirsiniz.
yum install ea-apache24-mod_remoteip
Sık Sorulan Sorular
ea-nginx geçişi sitelerin kapalı kalmasına yol açar mı?
Bu geçiş oldukça hızlıdır. Nginx 80 ve 443 portlarını devraldığı an Apache geri plana geçer. Süreç saniyeler sürdüğü için siteleriniz her zamanki gibi aktif kalmaya devam eder.
Nginx aktifken SSL sertifikalarımı manuel olarak güncellemem gerekir mi?
Nginx, cPanel tarafından oluşturulan SSL dosyalarını otomatik olarak okur ve HTTPS trafiğini yönetir. Sertifika yenileme süreçlerinde ek bir işlem yapmamıza gerek kalmaz.
Nginx devreye girdiğinde Apache modülleri ve .htaccess kuralları çalışmaya devam eder mi?
Nginx bir reverse proxy olarak çalıştığı için istekleri hala Apache işlemektedir. Bu sayede .htaccess üzerindeki yönlendirmeleriniz ve Apache modülleriniz işlevselliğini yitirmez.