NGINX veya Apache ile Etkinleştirilmiş Siteler ⋆ ALexHost SRL

Test your skills on our all Hosting services and get 15% off!

Use code at checkout:

Skills
06.12.2024

NGINX veya Apache ile Etkinleştirilmiş Siteler

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 özellikli ve son derece yapılandırılabilirdir, bu da onları web sitelerini barındırmak için en iyi seçenekler haline getirir. Linux tabanlı sistemlerde, NGINX ve Apache web sitesi yönetimini, genellikle sites-enabled ve sites-available olarak adlandırılan bir yapılandırma dosyaları sistemi kullanarak web sitelerini etkinleştirerek ve devre dışı bırakarak gerçekleştirir.

Kullanılabilir siteleri ve etkin siteleri anlama

Hem NGINX hem de Apache web sitelerini yönetmek için benzer bir yapı kullanır. Bu yapı, kullanılabilir siteleri etkin olanlardan ayırarak sistem yöneticilerinin hangi sitelerin yayında olduğunu kolayca yönetmesine olanak tanır.

  • sites-available: Bu dizin, web sunucunuzla potansiyel olarak hizmet verebileceğ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 etkin değildir.
  • sites-enabled: Bu dizin, şu anda etkin olan ve web sunucusu tarafından sunulan web sitelerinin yapılandırma dosyalarına sembolik bağlantılar içerir. Yalnızca “etkinleştirilen” siteler aktif olacak ve kullanıcılar tarafından kullanılabilecektir.

Apache ile Siteleri Yönetme

1. Apache Sanal Konak Yapılandırması

Apache, tek bir sunucudan birden fazla web sitesine hizmet vermek için sanal ana bilgisayarlar kullanır. Her web sitesinin, belge kökü, günlükler ve daha fazlası gibi yönergeler de dahil olmak üzere Apache’nin etki alanını nasıl ele alması gerektiğini belirten kendi yapılandırma dosyası vardır.

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

Etc/apache2/sites-available/ dizininde bir sanal konak yapılandırma dosyası oluşturabilirsiniz. Örneğin, example.com adlı 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:


ServerAdmin admin@test.oo.md
ServerName (your_domain veya 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 birleştirilmiş

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

2. Siteyi Etkinleştirin

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

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şturarak web sitesini etkin hale getirir.

3. Apache’yi Yeniden Yükle

Siteyi etkinleştirdikten 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 Disable Site) komutunu kullanabilirsiniz:

sudo a2dissite example.com.conf

Bu, siteler etkin dizinindeki sembolik bağlantıyı kaldırır ve site artık sunulmayacaktır.

NGINX ile Siteleri Yönetme

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

NGINX, Apache’nin sanal konaklarına eşdeğer olan sunucu bloklarını 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 ç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:

sunucu {
dinle 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-enabled dizininde sites-available dizinindeki yapılandırma dosyasına işaret eden bir sembolik bağlantı oluşturun. Bunu ln komutu ile 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, sözdizimi hatası olmadığından emin olmak için yapılandırmayı test etmek iyi bir fikirdir:

sudo nginx -t

4. NGINX’i Yeniden Yükle

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, siteler etkin 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 zaman sites-available dizininde her web sitesi veya etki alanı için ayrı yapılandırma dosyaları oluşturun. 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 yapılandırmanızı her zaman 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 Sürüm Kontrolü Kullanın: Çok sayıda web sitesi yönetiyorsanız veya karmaşık bir yapılandırmanız varsa, yapılandırma dosyalarınız için sürüm kontrolü (Git gibi) kullanmayı düşünün. Bu, değişiklikleri izlemenize ve gerekirse geri almanıza olanak tanır.
  4. HTTPS kullanın: Siteleriniz için her zaman SSL sertifikaları yapılandırın. Let’s Encrypt ücretsiz SSL sertifikaları sağlar ve HTTPS desteği için Apache veya NGINX ile kolayca entegre edilebilir.
  5. İzleme ve Günlükler: Her site için her zaman erişim ve hata günlüklerini yapılandırın. Bu, sorunların giderilmesine ve trafiğin izlenmesine 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 sağlar. Bu yapı, birden fazla web sitesini tek bir sunucudan kolayca etkinleştirmenize, devre dışı bırakmanıza ve yönetmenize olanak tanır.

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şturabilir ve kaldırabilirsiniz. Kullandığınız web sunucusu ne olursa olsun, değişiklik yaptıktan sonra sunucuyu yeniden yüklemeyi unutmayın ve yapılandırmaları uygulamadan önce her zaman test edin.

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

Daha fazla açıklama veya yardıma ihtiyacınız olursa bana bildirin!

Test your skills on our all Hosting services and get 15% off!

Use code at checkout:

Skills