Blogchevron_rightSunucu Yönetimichevron_rightNginx Virtual Host Nedir? Kapsamlı Yapılandırma Rehberi

Nginx Virtual Host Nedir? Kapsamlı Yapılandırma Rehberi

S
Serversium
calendar_today25 Mayıs 2026
schedule5 dk okuma
Nginx Virtual Host Nedir? Kapsamlı Yapılandırma Rehberi

Nginx Virtual Hosts Nedir ve Neden Kullanılır?

Nginx virtual host özelliği, tek bir sunucu üzerinde birden fazla web sitesini bağımsız olarak barındırmanızı sağlayan bir yapılandırma sistemidir. Bu mimari, sunucu kaynaklarının verimli kullanılmasını sağlar ve maliyetleri önemli ölçüde düşürür.

NGINX Inc. tarafından yayınlanan resmi belgelere göre, Nginx'in event-driven mimarisi Apache'ye kıyasla eşzamanlı bağlantıları çok daha verimli şekilde yönetir. NetCraft'ın 2024 verilerine göre, dünya genelindeki aktif web sunucularının yaklaşık %34'ü Nginx kullanmaktadır.

Çoklu Site Barındırma için Ön Gereksinimler

Yapılandırmaya başlamadan önce aşağıdaki gereksinimleri karşılamanız gerekir:

  • Ubuntu 20.04/22.04 veya CentOS/Rocky Linux tabanlı bir sunucu
  • Root veya sudo yetkili bir kullanıcı hesabı
  • Temel Linux komut satırı bilgisi
  • En az 2GB RAM önerilir (1GB minimum)
  • Açık port: 80 (HTTP) ve 443 (HTTPS)

Sunucu güvenliği için RKHunter ve Lynis ile sunucu güvenlik denetimi yapmanızı öneriyoruz.

Adım Adım Nginx Virtual Host Yapılandırması

1. Adım: Nginx Kurulumu

Öncelikle sistem paketlerini güncelleyip Nginx'i kuralım:

sudo apt update
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx

Kurulumdan sonra varsayılan sayfanın görüntülenip görüntülenmediğini kontrol edin:

curl -I http://localhost

2. Adım: Dizin Yapısını Oluşturma

Her site için ayrı bir dizin oluşturmak, dosya organizasyonunu kolaylaştırır:

sudo mkdir -p /var/www/alanadi1.com/public_html
sudo mkdir -p /var/www/alanadi2.com/public_html
sudo chown -R $USER:$USER /var/www/alanadi1.com/public_html
sudo chown -R $USER:$USER /var/www/alanadi2.com/public_html
sudo chmod -R 755 /var/www

3. Adım: Virtual Host Yapılandırma Dosyaları Oluşturma

Nginx yapılandırma dosyaları /etc/nginx/sites-available/ dizininde oluşturulur ve /etc/nginx/sites-enabled/ dizinine sembolik link verilir:

sudo nano /etc/nginx/sites-available/alanadi1.com

Aşağıdaki yapılandırmayı ekleyin:

server {
    listen 80;
    listen [::]:80;

    server_name alanadi1.com www.alanadi1.com;
    root /var/www/alanadi1.com/public_html;
    index index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }

    access_log /var/log/nginx/alanadi1.com_access.log;
    error_log /var/log/nginx/alanadi1.com_error.log;
}

İkinci site için de benzer bir yapılandırma oluşturun:

sudo nano /etc/nginx/sites-available/alanadi2.com

Yapılandırma dosyalarını etkinleştirmek için sembolik link oluşturun:

sudo ln -s /etc/nginx/sites-available/alanadi1.com /etc/nginx/sites-enabled/
sudo ln -s /etc/nginx/sites-available/alanadi2.com /etc/nginx/sites-enabled/

5. Adım: Nginx Yapılandırmasını Test Etme

Herhangi bir syntax hatası olup olmadığını kontrol edin:

sudo nginx -t

Çıktı şu şekilde olmalıdır:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Yapılandırmayı yeniden yükleyin:

sudo systemctl reload nginx

Nginx vs Apache: Performans Karşılaştırması

Çoklu site barındırma konusunda Nginx'in Apache'ye göre önemli avantajları bulunmaktadır:

Özellik Nginx Apache
Eşzamanlı Bağlantı Event-driven (non-blocking) Process/Thread-based
Bellek Kullanımı Düşük (~2-10MB/bağlantı) Yüksek (~8-12MB/bağlantı)
Static İçerik Hızı 2-3x daha hızlı Standart
Konfigürasyon Digest-based .htaccess tabanlı

Sunucu kaynaklarınızı optimize etmek için port hızı ve trafik kotası karşılaştırması hakkında bilgi almanızı öneriyoruz.

SSL/TLS Sertifikası ile Güvenli Yapılandırma

Modern web siteleri için HTTPS zorunlu hale gelmiştır. Let's Encrypt ile ücretsiz SSL sertifikası kurabilirsiniz:

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d alanadi1.com -d www.alanadi1.com

SSL yapılandırmanızı test etmek için SSL Labs test rehberimizi inceleyebilirsiniz.

Yaygın Hatalar ve Çözümleri

403 Forbidden Hatası

Bu hata genellikle dosya izinlerinden kaynaklanır. Çözüm için:

sudo chmod -R 755 /var/www/alanadi1.com
sudo chown -R www-data:www-data /var/www/alanadi1.com

Port Çakışması

Birden fazla site aynı portu kullanmaya çalışıyorsa, Nginx hata verecektir. Yapılandırma dosyalarınızı kontrol edin:

sudo netstat -tulpn | grep nginx

"Welcome to Nginx" Sayfası Görünüyor

Varsayılan yapılandırma dosyası hala etkin olabilir. Devre dışı bırakın:

sudo rm /etc/nginx/sites-enabled/default

Production İçin En İyi Uygulamalar

  1. Yedekleme: Yapılandırma değişikliklerinden önce her zaman yedek alın
  2. Log İzleme: Error ve access loglarını düzenli kontrol edin
  3. Rate Limiting: DDoS koruması için rate limit ayarlarını etkinleştirin
  4. Gzip Sıkıştırma: Bant genişliği tasarrufu için Gzip'i aktif edin
  5. Cache Yapılandırması: Statik içerik için tarayıcı cache sürelerini ayarlayın
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml;

WAF koruması için ModSecurity WAF kurulumu rehberimizi inceleyebilirsiniz.

Sonuç

Nginx virtual hosts yapılandırması, tek bir sunucu üzerinde birden fazla web sitesini verimli şekilde barındırmanın en iyi yoludur. Bu rehberdeki adımları takip ederek profesyonel bir çoklu site ortamı oluşturabilirsiniz.

Performans sorunları yaşarsanız, ağ optimizasyonu ve sunucu izleme araçlarını kullanmanızı öneriyoruz. Ayrıca DNS yönetimi için SOA ve TTL rehberimiz faydalı olacaktır.

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