Nginx, günümüzde yüksek trafikli web sitelerinin altyapısında sıkça tercih edilen bir web sunucusu ve ters proxy sunucusudur. Özellikle büyük ölçekli projelerde sunucu yükünü azaltmak ve sistem performansını optimize etmek amacıyla kullanılır. Apache gibi geleneksel web sunucularına kıyasla yüksek yük altında gösterdiği üstün performans ve düşük sistem kaynakları kullanımı ile öne çıkar. Bu nedenle Nginx yüksek trafikli siteler için ideal bir çözüm olarak kabul edilir. Centos Nginx kurulumu da bu yüzden kullanıcılar tarafından sıklıkla aranır.
Nginx’in en belirgin avantajlarından biri hafif ve esnek yapısıdır. Yüksek dayanıklılık sunan bu yazılım özellikle aynı anda çok sayıda bağlantıyı yönetmesi gereken web siteleri için mükemmel bir seçimdir. Apache’ye kıyasla Nginx çok daha düşük bellek kullanımıyla çalışır bu da yoğun trafik altında bile sunucunun hızlı ve kararlı kalmasını sağlar.
Nginx, asenkron ve olay tabanlı bir mimariye sahip olduğu için geleneksel iş parçacığı tabanlı sunuculardan çok daha verimli bir şekilde çalışır. Bu yapı yüksek sayıda eşzamanlı isteği etkin bir şekilde işleyerek sunucunun kaynaklarını optimize eder.
Centos Nginx kurulumu, birkaç basit adımı takip ederek gerçekleştirilir. Aşağıdaki adımları takip ederek siz de basit ve hızlı bir şekilde nginx kurulumunu hayata geçirebilirsiniz:
Depoyu Güncelleyin
İlk olarak sisteminizdeki paket yöneticisini güncellemek gerekir. Aşağıdaki komutu kullanarak sisteminizi güncelleyebilirsiniz:
bash
Kodu kopyala
sudo yum update -y
EPEL Deposunu Etkinleştirin
Nginx’i yüklemek için EPEL (Extra Packages for Enterprise Linux) deposunu etkinleştirmeniz gerekir. CentOS 7 ve CentOS 8 için bu adım şu şekildedir:
- CentOS 7 için:
bash
Kodu kopyala
sudo yum install epel-release -y
- CentOS 8 için:
EPEL deposunu eklemek için aşağıdaki komutu çalıştırın:
bash
Kodu kopyala
sudo dnf install epel-release -y
Nginx Kurulumu
Artık Nginx’i kurmaya hazırsınız. Aşağıdaki komutla Nginx’i kurabilirsiniz:
bash
Kodu kopyala
sudo yum install nginx -y
CentOS 8’de yum yerine dnf komutunu da kullanabilirsiniz:
bash
Kodu kopyala
sudo dnf install nginx -y
Nginx’i Başlatın
Kurulum tamamlandıktan sonra Nginx hizmetini başlatın:
bash
Kodu kopyala
sudo systemctl start nginx
Nginx’in sistem başlatıldığında otomatik olarak başlamasını sağlamak için şu komutu kullanın:
bash
Kodu kopyala
sudo systemctl enable nginx
Firewall Ayarları
Nginx’in HTTP (80) ve HTTPS (443) trafiğini kabul etmesi için güvenlik duvarı ayarlarını yapılandırmanız gerek:
- HTTP ve HTTPS trafiğini izin verin:
bash
Kodu kopyala
sudo firewall-cmd –permanent –zone=public –add-service=http
sudo firewall-cmd –permanent –zone=public –add-service=https
sudo firewall-cmd –reload
Nginx’i Test Edin
Tarayıcınızı açarak sunucunuzun IP adresine gidin (örneğin http://your_server_ip). Eğer Nginx düzgün kurulduysa “Welcome to Nginx” başlıklı varsayılan Nginx sayfasını görmelisiniz.
Nginx Global Yapılandırması
Nginx’in temel yapılandırma dosyası olan nginx.conf CentOS ve diğer Linux dağıtımlarında genellikle /etc/nginx/nginx.conf dizininde bulunur. Bu dosya Nginx’in nasıl çalıştığını belirleyen birincil ayarları kapsar ve web sunucusunun davranışını özelleştirmek için kullanılır. Nginx yapılandırma dosyası oldukça esnek olup sunucunun performansını ve güvenliğini optimize etmek amacıyla çeşitli parametreler ayarlamaya imkan tanır.
nginx.conf dosyasındaki ilk önemli bölüm Nginx arka plan programı (daemon) işlemlerini çalıştıran kullanıcıyı tanımlar. Bu genellikle user direktifi ile belirtilir. Varsayılan olarak Nginx genellikle nginx veya www-data gibi bir kullanıcı ile çalıştırılır.
Ancak güvenlik veya performans gereksinimlerine bağlı olarak bu kullanıcıyı değiştirmeniz gerekebilir. Örneğin web uygulamanızın belirli bir kullanıcı altında çalışmasını istiyorsanız bu ayarı değiştirerek istediğiniz kullanıcıyı tanımlayabilirsiniz.
Bir diğer kritik ayar ise Nginx’in aynı anda kaç tane işçi işlemi (worker process) çalıştıracağını belirleyen worker_processes direktifidir. Bu ayar sunucunun donanımına ve trafik yüküne bağlı olarak optimize edilmelidir.
Genel olarak worker_processes sayısı sunucunun CPU çekirdek sayısına eşit olacak şekilde ayarlanır. Bu Nginx’in mevcut donanım kaynaklarını tam olarak kullanmasını sağlar ve yüksek trafikli sitelerde performansı önemli ölçüde artırır.