Blogchevron_rightSunucu Yönetimichevron_rightNginx Yapılandırma Rehberi: Performans ve Güvenlik İpuçları

Nginx Yapılandırma Rehberi: Performans ve Güvenlik İpuçları

S
Serversium
calendar_today31 Mayıs 2026
schedule5 dk okuma
Nginx Yapılandırma Rehberi: Performans ve Güvenlik İpuçları

Nginx Nedir ve Neden tercih Edilir?

Nginx, yüksek performanslı, düşük kaynak tüketimine sahip açık kaynaklı bir web sunucusudur. 2024 verilerine göre, dünya genelindeki aktif web sitelerinin %35'inden fazlası Nginx kullanmaktadır. Özellikle yüksek trafikli e-ticaret hosting çözümlerinde ve dinamik uygulamalarda tercih edilir. Nginx'in asenkron yapısı, eşzamanlı binlerce bağlantıyı tek iş parçacığıyla yönetebilmesini sağlar.

Gelişmiş Nginx Yapılandırması İçin Temel Adımlar

1. Worker Process ve Bağlantı Ayarları

Nginx'in performansını doğrudan etkileyen worker process yapılandırması, sunucu kaynaklarının verimli kullanımı için kritik öneme sahiptir.

worker_processes auto;
worker_connections 4096;
use epoll;
multi_accept on;

Bu ayarlar, Nginx'in CPU çekirdek sayısına göre worker process oluşturmasını ve her worker'ın 4096 eşzamanlı bağlantıyı yönetmesini sağlar.

2. Buffer ve Timeout Yapılandırması

Buffer boyutları, sunucu performansını doğrudan etkiler. Yanlış yapılandırma, yavaş yükleme sürelerine ve kaynak israfına neden olabilir.

client_body_buffer_size 10K;
client_header_buffer_size 1k;
client_max_body_size 8m;
large_client_header_buffers 4 32k;
sendfile on;
tcp_nopush on;
tcp_nodelay on;

Bu ayarlar, istemci isteklerinin tampon bellek boyutlarını optimize eder ve TCP iletim performansını artırır.

Güvenlik Yapılandırması

Nginx güvenliği, modern web uygulamalarının olmazsa olmazıdır. Güvenlik header'ları rehberi incelendiğinde, doğru yapılandırmanın критик olduğu görülür.

Güvenlik Header'ları

add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-XSS-Protection "1; mode=block" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Content-Security-Policy "default-src 'self';" always;

Sunucu Bilgilerinin Gizlenmesi

server_tokens off;
more_clear_headers Server;
more_clear_headers X-Powered-By;

Bu ayarlar, saldırganların sunucu versiyonu ve teknoloji bilgilerini öğrenmesini engeller.

SSL/TLS Yapılandırması

HTTPS kullanımı hem güvenlik hem de SEO açısından zorunlu hale gelmiştir. Google'ın 2024 verilerine göre, HTTPS kullanmayan siteler arama sıralamalarında geri planda kalmaktadır.

ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256';
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 1d;
ssl_certificate /etc/nginx/ssl/cert.pem;
ssl_certificate_key /etc/nginx/ssl/key.pem;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;

TLS 1.3, daha hızlı el sıkışma süreleri sunar ve modern şifreleme standartlarını kullanır.

Yük Dengeleme (Load Balancing)

Yük dengeleme, yüksek trafikli uygulamalar için kritik bir mimari bileşendir. Nginx, gelişmiş proxy yetenekleri ile bu işlevi üstlenir.

upstream backend {
    least_conn;
    server backend1.example.com weight=5;
    server backend2.example.com weight=3;
    server backend3.example.com;
    keepalive 32;
}

Yük Dengeleme Algoritmaları Karşılaştırması

AlgoritmaAvantajlarKullanım Senaryosu
Round RobinBasit, eşit dağılımHomojen sunucular
Least ConnectionsDinamik yük dengelemeFarklı kapasitelerdeki sunucular
IP HashOturum tutmaSession-based uygulamalar
WeightedKaynak bazlı dağılımAsimetrik sunucu kapasiteleri

Önbellekleme (Caching) Stratejileri

Nginx'in önbellekleme özellikleri, web sitesi hızı optimizasyonu için temel araçlardandır.

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=app_cache:10m max_size=1g inactive=60m use_temp_path=off;

location / {
    proxy_cache app_cache;
    proxy_cache_valid 200 60m;
    proxy_cache_valid 404 1m;
    proxy_cache_use_stale error timeout http_500 http_502 http_503 http_504;
    add_header X-Cache-Status $upstream_cache_status;
    proxy_pass http://backend;
}

Bu yapılandırma, 60 dakika boyunca 200 yanıtlarını önbelleğe alır ve hata durumlarında eski önbellek kullanır.

FastCGI Önbellekleme

fastcgi_cache_path /var/cache/fastcgi levels=1:2 keys_zone=php_cache:10m max_size=100m inactive=30m use_temp_path=off;

location ~ \.php$ {
    fastcgi_cache php_cache;
    fastcgi_cache_valid 200 30m;
    fastcgi_cache_valid any 1m;
    fastcgi_cache_use_stale error timeout invalid_header http_500;
    add_header X-FastCGI-Cache $upstream_cache_status;
}

Rate Limiting (Hız Sınırlama)

Rate limiting, brute force saldırılarına karşı koruma sağlar ve kaynakların adil kullanımını garanti eder.

limit_req_zone $binary_remote_addr zone=api_limit:10m rate=10r/s;

location /api/ {
    limit_req zone=api_limit burst=20 nodelay;
    limit_req_status 429;
}

Bu yapılandırma, her IP için saniyede 10 istek sınırı koyar ve burst durumunda 20'ye kadar izin verir.

Farklı Endpoint'ler İçin Rate Limiting

limit_req_zone $binary_remote_addr zone=login_limit:10m rate=3r/s;
limit_req_zone $binary_remote_addr zone=general_limit:10m rate=30r/s;

location /login {
    limit_req zone=login_limit burst=5 nodelay;
}

location / {
    limit_req zone=general_limit burst=50 nodelay;
}

Sıkıştırma (Compression) Yapılandırması

Gzip sıkıştırması, bandwidth tasarrufu sağlar ve sayfa yükleme sürelerini önemli ölçüde azaltır. Araştırmalara göre, doğru sıkıştırma yapılandırması sayfa boyutlarını %70'e varan oranlarda azaltabilir.

gzip on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_types text/plain text/css text/xml application/json application/javascript application/rss+xml application/atom+xml image/svg+xml;
gzip_min_length 1000;
gzip_disable "msie6";

Brotli sıkıştırması, Gzip'e göre %15-25 daha iyi sıkıştırma oranları sunar.

HTTP/2 ve QUIC Yapılandırması

HTTP/2, multiplexing, header sıkıştırma ve server push özellikleriyle performansı artırır. QUIC ise UDP tabanlı yeni nesil protokol olarak gecikme sürelerini minimize eder.

listen 443 ssl http2;
listen 443 ssl http3 quic;

ssl_certificate /etc/nginx/ssl/cert.pem;
ssl_certificate_key /etc/nginx/ssl/key.pem;

add_header Alt-Svc 'h3=":443"; ma=86400';
add_header X-Protocol 'HTTP/3' always;

Dosya Sunma Optimizasyonu

Statik dosyalar için optimize edilmiş sunma, genel performansı artırır.

open_file_cache max=1000 inactive=30s;
open_file_cache_valid 60s;
open_file_cache_min_uses 2;
open_file_cache_errors on;

sendfile on;
tcp_nopush on;
tcp_nodelay on;

Gzip vs Brotli Karşılaştırması

ÖzellikGzipBrotli
Sıkıştırma Oranı%70%82
CPU KullanımıDüşükOrta
Tarayıcı DesteğiTümüModern tarayıcılar
Sunucu Tarafı DestekGenişSınırlı

Performans İzleme ve Hata Ayıklama

Nginx status modülü, gerçek zamanlı performans izleme sağlar.

location /nginx_status {
    stub_status on;
    allow 127.0.0.1;
    deny all;
}

Bu endpoint şu bilgileri döndürür: aktif bağlantı sayısı, kabul edilen/handle edilen istekler, okuma/yazma bekleme durumları.

Özel Hata Sayfaları

Kullanıcı deneyimini iyileştirmek için özel hata sayfaları yapılandırın.

error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;

location = /404.html {
    root /var/www/errors;
    internal;
}

location = /50x.html {
    root /var/www/errors;
    internal;
}

Sonuç ve En İyi Uygulamalar

Gelişmiş Nginx yapılandırması, web uygulamalarının performans, güvenlik ve ölçeklenebilirliğini doğrudan etkiler. Yukarıdaki ayarları uygularken şunlara dikkat edin:

  1. Test Edin: Her değişikliği üretim ortamına geçmeden önce test ortamında deneyin.
  2. İzleyin: Analytics araçları ile performansı sürekli izleyin.
  3. Güncelleyin: SSL sertifikalarınızı ve Nginx sürümlerini düzenli güncelleyin.
  4. Yedekleyin: Yapılandırma dosyalarınızın yedeklerini alın.
  5. Belgeleyin: Yaptığınız değişiklikleri ve gerekçelerini dokümante edin.

Doğru yapılandırılmış bir Nginx sunucusu, sanal sunucu kaynaklarını en verimli şekilde kullanarak kullanıcılara hızlı ve güvenli bir deneyim sunar.

library_booksBenzer İçerikler

Cloud Sunucu Nedir? Avantajları ve Detaylı Rehber
Sunucu Yönetimi
calendar_today5 Nisan 2026
schedule5 dk

Cloud Sunucu Nedir? Avantajları ve Detaylı Rehber

Cloud sunucular, dinamik kaynak dağıtımıyla işletmelerin kesintisiz büyümesini sağlar. Avantajlardan karşılaştırmalara tüm detaylar bu rehberde yer alıyor.

S
Serversiumarrow_forward
Linux vs Windows Sunucu: Hangisi Projeye Uygun?
Sunucu Yönetimi
calendar_today6 Nisan 2026
schedule5 dk

Linux vs Windows Sunucu: Hangisi Projeye Uygun?

Linux ve Windows Sunucu arasındaki teknik farkları, maliyet avantajlarını ve proje uyumluluğunu detaylı olarak karşılaştırıyoruz. Yazılım stack'inize en uygun işletim sistemini seçmek için kapsamlı rehberimizle doğru altyapı kararını verin.

S
Serversiumarrow_forward
Plesk Kurulumu - Ubuntu 24 Üzerinde Adım Adım Rehber
Sunucu Yönetimi
calendar_today16 Nisan 2026
schedule5 dk

Plesk Kurulumu - Ubuntu 24 Üzerinde Adım Adım Rehber

Ubuntu 24 üzerinde Plesk kurulumunu adım adım öğrenin. Bu rehberde sistem gereksinimleri, kurulum adımları ve temel yapılandırma ayarlarını bulabilirsiniz.

S
Serversiumarrow_forward