Nginx farklı portlar üzerinde web sitesi yayınlama nasıl yapılır?

Nginx Nedir?

Nginx, yüksek performanslı bir web sunucusu ve ters proxy sunucusudur. Özellikle aşırı yük altındaki sistemler için optimize edilmiş bir yapı sunarak, statik ve dinamik içeriklerin hızlı bir şekilde sunulmasına olanak tanır. Ayrıca, HTTP, HTTPS, SMTP, POP3 ve IMAP protokollerini desteklemesi sayesinde farklı türdeki web uygulamaları için geniş bir kullanım alanı mevcuttur. Nginx, yapılandırması basit ve kullanımı kolay bir platform olarak popülerlik kazanmıştır.

Nginx ile Çoklu Port Yayınlama

Nginx, varsayılan olarak HTTP trafiğini 80 numaralı port üzerinden dinlemektedir. Ancak, farklı web sitelerinin veya uygulamaların aynı sunucu üzerinde, farklı portlar aracılığıyla hizmet vermesi gerekebilir. Bu durum, birden fazla web uygulamasını tek bir sunucu üzerinde çalıştırmak için yaygın bir tekniktir. Farklı portlarda yayın yaparken, her bir port için ayrı bir sunucu bloğu oluşturmak gereklidir.

Sunucu Bloğu Oluşturma

Nginx yapılandırma dosyası genellikle `/etc/nginx/nginx.conf` dosyasındadır veya `/etc/nginx/sites-available/` dizininde ayrı dosyalar olarak bulunabilir. Yeni bir sunucu bloğu oluşturmak için aşağıdaki adımlar izlenebilir.

1. Yapılandırma Dosyasını Açma:
Nginx yapılandırma dosyası bir metin düzenleyici ile açılmalıdır. Örneğin, `nano` veya `vim` kullanılabilir.

“`
sudo nano /etc/nginx/sites-available/example.com
“`

2. Sunucu Bloğu Ekleme:
Aşağıdaki örnek, 8080 ve 8081 portları üzerinde iki farklı siteyi nasıl yapılandırılacağını göstermektedir.

“`
server {
listen 8080;
server_name example.com;

location / {
root /var/www/example;
index index.html index.htm;
}
}

server {
listen 8081;
server_name example2.com;

location / {
root /var/www/example2;
index index.html index.htm;
}
}
“`

Yukarıdaki yapılandırmada, `example.com` adresi 8080 portundan hizmet verirken, `example2.com` adresi 8081 portundan hizmet vermektedir. Her bir sunucu bloğu, ayrı `root` dizinlerine sahip olup, farklı içerikler sunmak için yapılandırılabilir.

Portların Dinlenmesi

Yapılandırma dosyaları oluşturulduktan sonra, yüklediğiniz değişikliklerin Nginx tarafından tanınabilmesi için Nginx servisi yeniden başlatılmalıdır. Bu, aşağıdaki komutla yapılabilir:

“`
sudo systemctl restart nginx
“`

Eğer Nginx sunucu durumu kontrol edilmezse veya hata varsa, şu komutla yapılandırma test edilebilir:

“`
sudo nginx -t
“`

Bu komut, yapılandırma dosyalarının doğruluğunu kontrol edecek ve herhangi bir hata durumunda gerekli bilgileri verecektir.

Güvenlik Duvarı Ayarları

Farklı portlarda Nginx ile web servisi sağlarken, kullanılan portların güvenlik duvarında açık olması gerektiği unutulmamalıdır. Örneğin, UFW (Uncomplicated Firewall) kullanıyorsa, aşağıdaki komutlarla bu portlar açılabilir:

“`
sudo ufw allow 8080
sudo ufw allow 8081
“`

Bu komutlar, belirtilen portların gelen trafiğe izin vermesini sağlar.

Test Etme

Web sitelerinin düzgün çalıştığı kontrol edilmelidir. Her iki domain adı için tarayıcıda `http://example.com:8080` ve `http://example2.com:8081` adresleri ziyaret edilerek, ilgili web sitelerinin düzgün bir şekilde yayımlandığı gözlemlenebilir.

Eğer IP adresi üzerinden test yapmak isteniyorsa, örneğin `http://sunucu-ip:8080` ve `http://sunucu-ip:8081` adresleri ile de ulaşmak mümkündür. Sunucu IP adresine uygun şekilde ayarlanmalıdır.

Web Uygulamakları ve Yük Dengeleme

Nginx, çeşitli web uygulamaları ve yük dengeleme için de kullanılabilir. Farklı portlardan sunulan uygulamalar, aynı zamanda Nginx’in yük dengeleme özellikleri ile daha iyi yönetilebilir. Bunun için, her bir sunucu bloğuna gerekli yapılandırmalar eklenerek, özel yük dengeleme senaryoları uygulanabilir.

Performans Optimizasyonu

Sunucu üzerindeki performansı artırmak için Nginx’in optimizasyon özellikleri de göz önünde bulundurulmalıdır. Örneğin, önbellekleme ayarları, gzip sıkıştırması ve bağlantı sınırlamaları gibi yapılandırmalar ile sunulan içeriklerin daha hızlı erişilebilir hale gelmesi sağlanabilir. Bu optimizasyonların doğru yapılandırılması durumunda, sunulan hizmetin kalitesi ve yanıt süreleri önemli ölçüde iyileştirilebilir.

Nginx ile farklı portlarda web siteleri yayınlama süreci, geniş bir kullanım alanına sahip olup, tek bir sunucu üzerinde birden fazla uygulamanın yönetimini kolaylaştırır. Uygulama ihtiyaçlarına göre yapılandırmalar yapılabilir ve performans artırıcı önlemler alınarak, kullanıcı deneyimi iyileştirilebilir.

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz

SON İÇERİKLER

İLGİNİZİ ÇEKEBİLİR