15%

Alexhost dileklerinizi gerçekleştiriyor

Ankete katılın ve ödüller kazanın

ALEX26
Başlayın
30.10.2024

NGINX veya Apache ile Etkinleştirilmiş Siteler

NGINX ve Apache, dünyada en yaygın kullanılan iki web sunucusudur. Her ikisi de güçlü, zengin özelliklere sahip ve yüksek derecede yapılandırılabilir olduğundan, web sitelerini barındırmak için en iyi seçeneklerdir. Linux tabanlı sistemlerde, NGINX ve Apache, web sitelerini yönetmek için genellikle sites-enabled ve sites-available olarak adlandırılan yapılandırma dosyaları sistemi kullanarak web sitelerini etkinleştirir ve devre dışı bırakır.

Bu makale, sites-enabled ve sites-available kavramlarını anlamanıza yardımcı olacak ve NGINX ve Apache web sunucularını kullanarak web sitelerini nasıl etkinleştireceğinizi ve yöneteceğinizi açıklayacaktır.

sites-available ve sites-enabled’ı Anlamak

Hem NGINX hem de Apache, web sitelerini yönetmek için benzer bir yapı kullanır. Bu yapı, mevcut siteleri etkinleştirilmiş olanlardan ayırarak sistem yöneticilerinin hangi sitelerin canlı olduğunu kolayca yönetmelerine olanak tanır.

  • sites-available: Bu dizin, web sunucunuzla potansiyel olarak sunabileceğiniz tüm web siteleri için yapılandırma dosyalarını içerir. Bu dizindeki dosyalar, sanal ana bilgisayarları veya sunucu bloklarını (NGINX durumunda) ve bunların yapılandırmalarını tanımlar. Bu web siteleri, etkinleştirilene kadar aktif değildir.
  • sites-enabled: Bu dizin, şu anda etkinleştirilen ve web sunucusu tarafından sunulan web sitelerinin yapılandırma dosyalarına sembolik bağlantılar içerir. Sadece “etkinleştirilen” siteler aktif olacak ve kullanıcılara sunulacaktır.

Apache ile Siteleri Yönetmek

1. Apache Sanal Ana Bilgisayar Yapılandırması

Apache, tek bir sunucudan birden fazla web sitesini sunmak için sanal ana bilgisayarlar kullanır. Her web sitesinin, Apache’nin alan adını nasıl işlemesi gerektiğini belirten kendi yapılandırma dosyası vardır; bu, belge kökü, günlükler ve daha fazlası gibi direktifleri içerir.

Apache için Örnek Sanal Ana Bilgisayar Yapılandırma Dosyası

/etc/apache2/sites-available/ dizininde bir sanal ana bilgisayar yapılandırma dosyası oluşturabilirsiniz. Örneğin, example.com adında bir web sitesini yapılandırmak için:

sudo nano /etc/apache2/sites-available/test.oo.md.conf

Dosyanın içinde, example.com için yapılandırmayı tanımlarsınız:

<VirtualHost *:80>
ServerAdmin admin@test.oo.md
ServerName (your_domain or Ip_address)
ServerAlias www.test.oo.md
DocumentRoot /var/www/test.oo.md
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

*ServerName (your_domain veya Ip_address)Ip_address için kullandığınız your_domain değerini değiştirin.

2. Siteyi Etkinleştirin

Sanal ana bilgisayar yapılandırma dosyası oluşturulduktan sonra, siteyi a2ensite komutunu kullanarak etkinleştirebilirsiniz (Apache 2 Site Etkinleştir):

sudo a2ensite test.oo.md.conf

Bu, /etc/apache2/sites-available/test.oo.conf dosyasından /etc/apache2/sites-enabled/test.oo.md.conf dosyasına sembolik bir bağlantı oluşturur ve web sitesini etkinleştirir.

3. Apache’yi Yeniden Yükleyin

Site etkinleştirildikten sonra, değişiklikleri uygulamak için Apache’yi yeniden yükleyin:

sudo systemctl reload apache2

4. Siteyi Devre Dışı Bırakın

Bir siteyi devre dışı bırakmak için a2dissite (Apache 2 Site Devre Dışı Bırak) komutunu kullanabilirsiniz:

sudo a2dissite example.com.conf

Bu, sites-enabled dizinindeki sembolik bağlantıyı kaldırır ve site artık sunulmayacaktır.

NGINX ile Siteleri Yönetmek

1. NGINX Sunucu Bloğu Yapılandırması

NGINX, Apache’nin sanal ana bilgisayarlarına eşdeğer olan sunucu blokları kullanır. Sunucu bloğu yapılandırma dosyaları /etc/nginx/sites-available/ dizinine yerleştirilir.

NGINX için Örnek Sunucu Bloğu Yapılandırması

example.com için bir yapılandırma dosyası oluşturmak için şunu çalıştırın:

sudo nano /etc/nginx/sites-available/test.oo.md

Dosyanın içinde, example.com için sunucu bloğunu tanımlarsınız:

server {
listen 80;
server_name example.com www.test.oo.md;
root /var/www/test.oo.md;
index index.html index.htm;
access_log /var/log/nginx/test.oo.md_access.log;
error_log /var/log/nginx/test.oo.md_error.log;
location / {
try_files $uri $uri/ =404;
}
}

2. Siteyi Etkinleştirin

Siteyi etkinleştirmek için, sites-available dizinindeki yapılandırma dosyasına işaret eden sites-enabled dizininde bir sembolik bağlantı oluşturun. Bunu ln komutuyla yapabilirsiniz:

sudo ln -s /etc/nginx/sites-available/test.oo.md /etc/nginx/sites-enabled/

3. NGINX Yapılandırmasını Test Edin

NGINX’i yeniden yüklemeden önce, yapılandırmayı test etmek iyi bir fikirdir; böylece sözdizimi hatası olmadığından emin olursunuz:

sudo nginx -t

4. NGINX’i Yeniden Yükleyin

Yapılandırma testi geçerse, değişiklikleri uygulamak için NGINX’i yeniden yükleyin:

sudo systemctl reload nginx

5. Siteyi Devre Dışı Bırakın

Bir siteyi devre dışı bırakmak için, sites-enabled dizininden sembolik bağlantıyı kaldırın:

sudo rm /etc/nginx/sites-enabled/test.oo.md

Daha sonra, değişiklikleri uygulamak için NGINX’i yeniden yükleyin:

sudo systemctl reload nginx

NGINX veya Apache ile Siteleri Yönetmek için En İyi Uygulamalar

  1. Yapılandırma Dosyalarını Düzenli Tutun: Her web sitesi veya alan adı için her zaman ayrı yapılandırma dosyaları oluşturun sites-available dizininde. Bu, birden fazla web sitesini yönetmeyi kolaylaştırır.
  2. Yeniden Yüklemeden Önce Yapılandırmaları Test Edin: Web sunucusunu yeniden yüklemeden önce her zaman yapılandırmanızı apachectl configtest (Apache için) veya nginx -t (NGINX için) ile test edin. Bu, sitelerinizi bozabilecek sorunlardan kaçınmanıza yardımcı olabilir.
  3. Yapılandırma Dosyaları için Versiyon Kontrolü Kullanın: Birçok web sitesi yönetiyorsanız veya karmaşık bir yapılandırmaya sahipseniz, yapılandırma dosyalarınız için versiyon kontrolü (Git gibi) kullanmayı düşünün. Bu, değişiklikleri takip etmenizi ve gerekirse geri almanızı sağlar.
  4. HTTPS Kullanın: Siteleriniz için her zaman SSL sertifikaları yapılandırın. Let’s Encrypt, ücretsiz SSL sertifikaları sağlar ve Apache veya NGINX ile HTTPS desteği için kolayca entegre edilebilir.
  5. İzleme ve Günlükler: Her site için erişim ve hata günlüklerini her zaman yapılandırın. Bu, sorunları gidermeye ve trafiği izlemeye yardımcı olur.

Sonuç

Hem NGINX hem de Apache, sites-available ve sites-enabled dizinleri ile web sitelerini yönetmek için güçlü yollar sunar. Bu yapı, tek bir sunucudan birden fazla web sitesini kolayca etkinleştirmenizi, devre dışı bırakmanızı ve yönetmenizi sağlar.

Apache için a2ensite ve a2dissite gibi komutları kullanabilirken, NGINX’te siteleri etkinleştirmek veya devre dışı bırakmak için sembolik bağlantıları manuel olarak oluşturup kaldırabilirsiniz. Hangi web sunucusunu kullanırsanız kullanın, değişiklik yaptıktan sonra sunucuyu yeniden yüklemeyi unutmayın ve her zaman yapılandırmaları uygulamadan önce test edin.

Bu uygulamaları takip ederek, NGINX veya Apache web sunucunuzda birden fazla siteyi yönetme konusunda sorunsuz bir deneyim yaşayacaksınız.

Daha fazla açıklama veya yardım isterseniz bana bildirin!

15%

Alexhost dileklerinizi gerçekleştiriyor

Ankete katılın ve ödüller kazanın

ALEX26
Başlayın