Nginx Web Sunucusunu Linux’ta Adım Adım Kurmak ve Yapılandırmak

Bu yazıda, Linux üzerinde Nginx web sunucusunun nasıl kurulacağını ve yapılandırılacağını detaylı bir şekilde anlatıyoruz.

BFS

Bir web projesine başlamak için doğru web sunucusunu seçmek kritik öneme sahiptir. Eğer hızlı, verimli ve güçlü bir seçenek arıyorsanız, Nginx tam size göre! Bu yazıda, Linux üzerinde Nginx web sunucusunun nasıl kurulacağını ve yapılandırılacağını adım adım anlatacağız. Hazırsanız, başlıyoruz!

1. Nginx Nedir ve Neden Kullanmalıyım?

Nginx, yüksek performanslı ve hafif bir web sunucusudur. Genellikle statik içerik sunumu ve ters proxy işlemleri için kullanılır. Diğer web sunucularına kıyasla daha az sistem kaynağı kullanır ve büyük trafik altındaki siteler için oldukça etkilidir. Ayrıca, HTTP ve HTTPS üzerinden sunucu işlemleri yapabilme yeteneği ile güvenlik açısından da oldukça güçlüdür.

2. Nginx'i Linux'a Kurma

Linux sistemlerde Nginx kurulumu oldukça basittir. İster Ubuntu, ister CentOS kullanıyor olun, kurulum süreci neredeyse aynıdır. Şimdi adımlara göz atalım:

# Ubuntu ve Debian için:

Eğer Ubuntu veya Debian tabanlı bir sistem kullanıyorsanız, terminali açarak aşağıdaki komutları sırasıyla yazabilirsiniz:


sudo apt update
sudo apt install nginx


İlk komut sisteminizi güncelleyecek, ikinci komut ise Nginx’i kuracaktır.

# CentOS ve RHEL için:

Eğer CentOS ya da RHEL kullanıyorsanız, terminalde şu komutları girerek kurulum yapabilirsiniz:


sudo yum install epel-release
sudo yum install nginx


Bu komutlar, Nginx’in en son sürümünü sisteminize yükleyecektir.

3. Nginx’i Başlatma ve Durumunu Kontrol Etme

Kurulum tamamlandığında, Nginx’i başlatmak için şu komutu kullanabilirsiniz:


sudo systemctl start nginx


Nginx’in doğru çalışıp çalışmadığını kontrol etmek için:


sudo systemctl status nginx


Eğer her şey yolundaysa, tarayıcınızda sunucunuzun IP adresini yazdığınızda, Nginx’in hoş geldiniz sayfası görünmelidir.

4. Nginx’i Otomatik Başlatma İçin Yapılandırma

Nginx’in her sistem açıldığında otomatik olarak başlamasını istiyorsanız, şu komutu kullanabilirsiniz:


sudo systemctl enable nginx


Bu, Nginx’in sistem her açıldığında otomatik olarak başlatılmasını sağlayacaktır.

5. Nginx Yapılandırma Dosyasını Anlamak

Nginx’in ana yapılandırma dosyası `/etc/nginx/nginx.conf`’te bulunur. Bu dosya, sunucunun nasıl çalıştığını ve hangi ayarların uygulanacağını belirler.

Temel yapılandırma dosyasına göz attığınızda, ilk dikkat çeken şey `server` blokları olacaktır. Burada Nginx’in hangi portlarda dinleyeceğini, hangi dosya yollarını kullanacağını ve daha fazlasını belirleyebilirsiniz.

Örneğin, aşağıdaki gibi bir `server` bloğu, Nginx’i 80 numaralı portta dinleyecek şekilde yapılandırır:


server {
    listen 80;
    server_name example.com;
    
    location / {
        root /var/www/html;
        index index.html;
    }
}


Yukarıdaki yapılandırmada:
- listen 80;: Sunucunun 80 numaralı portu dinlemesini sağlar.
- server_name example.com;: Bu sunucuya gelen taleplerin `example.com` için olduğunu belirtir.
- root /var/www/html;: Web dosyalarının bulunduğu klasör yolunu belirtir.
- index index.html;: Ana sayfa olarak `index.html` dosyasını kullanmasını sağlar.

Bu temel ayarlarla Nginx web sunucunuzun ilk adımlarını atmış oldunuz.

6. Güvenlik İçin Nginx Yapılandırması

Web sunucusunun güvenliği, her web yöneticisinin en büyük endişelerinden biridir. Nginx, birkaç basit yapılandırma ile güvenli hale getirilebilir. İlk olarak, Nginx’in HTTP üzerinden gelen bağlantıları HTTPS’ye yönlendirmesini sağlayarak güvenliği artırabilirsiniz.

Aşağıdaki kodu `nginx.conf` dosyanıza ekleyerek HTTP isteklerini HTTPS’ye yönlendirebilirsiniz:


server {
    listen 80;
    server_name example.com;
    return 301 https://$server_name$request_uri;
}


Bu, HTTP isteklerini otomatik olarak güvenli HTTPS bağlantılarına yönlendirecektir.

Ayrıca, SSL/TLS sertifikaları kullanarak HTTPS desteği eklemelisiniz. Sertifika almak için Let's Encrypt gibi ücretsiz bir servisi kullanabilirsiniz.

7. Nginx’i Yeniden Başlatma

Yapılandırma dosyanızda herhangi bir değişiklik yaptıysanız, Nginx’i yeniden başlatmanız gerekecektir. Bunun için aşağıdaki komutu kullanabilirsiniz:


sudo systemctl restart nginx


Bu komut, yapılan tüm değişiklikleri uygulayacak ve sunucuyu yeniden başlatacaktır.

8. Nginx’i Daha İleri Düzey Yapılandırma

Nginx sadece basit bir web sunucusundan çok daha fazlasını yapabilir. Web sitenizin yükünü dengelemek, cacheleme yapmak veya dinamik içerik sunmak gibi işlemleri kolayca yapılandırabilirsiniz.

Örneğin, statik dosyaların önbelleğe alınması için şu ayarları yapabilirsiniz:


location /images/ {
    root /var/www/html;
    expires 30d;
}


Bu, `/images/` altındaki tüm dosyaların 30 gün süreyle tarayıcı tarafından önbelleğe alınmasını sağlar.

Sonuç: Başarıyla Kurulum ve Yapılandırma

Ve işte, Linux üzerinde Nginx web sunucunuzu başarıyla kurdunuz ve yapılandırdınız! Artık yüksek performanslı, güvenli ve verimli bir web sunucusuna sahipsiniz. Nginx’in sağladığı bu güçle, trafiği rahatça karşılayabilir ve web sitenizin hızını önemli ölçüde artırabilirsiniz.

Unutmayın, Nginx esneklik ve özelleştirme sunarak, büyüyen web projeleriniz için mükemmel bir çözüm olacaktır. Nginx hakkında daha fazla öğrenmek ve daha ileri düzey yapılandırmalar yapmak için dökümantasyonları ve topluluk forumlarını keşfetmeye devam edebilirsiniz.

İlgili Yazılar

Benzer konularda diğer yazılarımız

ASP.NET Core ile Mobil Uygulama Geliştirme: Cross-Platform Web ve Mobil Uygulama Birleştirme

Günümüzde mobil uygulamalar hayatımızın ayrılmaz bir parçası haline geldi. Akıllı telefonlarımızda geçirdiğimiz zamanın büyük bir kısmını mobil uygulamalar sayesinde geçiriyoruz. Peki, bir mobil uygulama geliştirirken karşılaştığımız zorlukları nasıl...

Yapay Zeka ile SEO Stratejilerinizi Nasıl Güçlendirebilirsiniz? 2025 Yılında Başarılı Olacak Teknikler

Dijital pazarlamanın ve SEO'nun dünyası hızla değişiyor. Bir zamanlar sadece anahtar kelimeler ve backlink'ler üzerine kurulu olan SEO stratejileri, şimdi çok daha karmaşık ve yenilikçi bir yapıya bürünüyor. Bu dönüşümün başrol oyuncusu ise Yapay Zeka...

ASP.NET Core 500 Internal Server Error: Sebepleri ve Çözümleri

Bir web geliştiricisi olarak, karşılaştığınız en zorlayıcı hatalardan biri şüphesiz "500 Internal Server Error"dır. Bu hata, web uygulamanızda her şeyin yolunda gittiğini düşündüğünüz bir anda karşınıza çıkabilir ve tüm projeyi durdurabilir. Ancak merak...