Apache Sanal Ana Bilgisayar nedir?
- IP Tabanlı Sanal Barındırma – Apache Sunucusundaki her bir web sitesi farklı, benzersiz bir IP adresi kullanır.
- İsme Dayalı Sanal Konaklar – tek bir IP adresi kullanarak birden çok etki alanı eklemenizi sağlar.
Bu öğretici, bir Ubuntu 18.04 sisteminde Apache Sanal Konaklarını nasıl kuracağınızı gösterir.
Önkoşullar
Tek Bir IP’de Birden Çok Etki Alanı Kurma
Apache Virtual Host, bir web sitesi kurarken kaynaklarınızı en üst düzeye çıkarmanıza olanak tanır. Bu güçlü yazılımla, bir dizi farklı etki alanını barındırmak için tek bir sunucu ve tek bir IP adresi kullanabilir.
Apache Sanal Konaklarını yapılandırmadan önce, Apache web sunucusunu kurmanız gerekir. Bunu yapmak için şu komutu çalıştırın:
sudo apt-get install apache2
Web sunucusunu kurarken herhangi bir sorun yaşarsanız, Apache’yi Ubuntu’ya kurmakla ilgili ayrıntılı eğitimimize bakın.
İsme Dayalı Sanal Konak Nasıl Kurulur
İsim tabanlı sanal barındırma, istemcinin ana bilgisayar adını HTTP başlığının bir öğesi olarak sunucuya bildirmesine olanak tanır. Bu özellik, bir makinenin aynı IP adresini paylaşan birden çok web sitesini barındırabileceği anlamına gelir.
1. Adım: Bir Dizin Yapısı Oluşturun
Her sanal ana bilgisayarın, sanal ana bilgisayar verilerini depolamak için bir dizine sahip olması gerekir. Aşağıdaki konumda dizinler ve bir dizin yapısı oluşturun /var/www. Örneğimizde, oluşturduğumuz phxnap1.com Ve phxnap2.com dizinler, her etki alanı adı için bir tane.
1. Aşağıdaki komutu girin ve örnek etki alanını kendi alan adlarınızla değiştirin:
sudo mkdir -p /var/www/phxnap1.com/public_html
sudo mkdir -p /var/www/phxnap2.com/public_html
Dizinler içinde ayrıca oluşturduk public_html. Bu dizinler, etki alanları için web sitesi dosyalarını depolayacak.
2. Ardından, bir örnek oluşturun index.html kullanarak her etki alanı için sayfa nano veya favori metin düzenleyiciniz. İlk etki alanıyla başlayın:
nano /var/www/phxnap1.com/public_html/index.html
3. Aşağıdaki örnek HTML’yi ekleyin:
<html>
<head>
<title>Welcome to phoenixNAP 1!</title>
</head>
<body>
<h1>Well done! Everything seems to be working on your first domain!</h1>
</body>
</html>
4. Dosyayı kaydedin ve çıkın.
5. Ardından, ikinci etki alanı için bir örnek sayfa oluşturun:
nano /var/www/phxnap2.com/public_html/index.html
6. Aşağıdaki satırları dosyaya ekleyin:
<html>
<head>
<title>Welcome to phoenixNAP 2!</title>
</head>
<body>
<h1>Well done! Everything seems to be working on your second domain!</h1>
</body>
</html>
7. İkinci HTML dosyasını kaydedin ve çıkın.
8. Herhangi bir izin sorununu önlemek için, belgenizin kök dizininin sahipliğini şu şekilde değiştirin: www verisi. chown komutu bu durumda kullanışlıdır:
sudo chown –R www-data:www-data /var/www/phxnap1.com
sudo chown –R www-data:www-data /var/www/phxnap2.com
şimdi başarılı oldun dizin sahipliğini Apache Kullanıcısı olarak değiştirdi.
2. Adım: Bir Sanal Ana Bilgisayar Yapılandırma Dosyası Oluşturun
Apache Sanal Konak yapılandırma dosyaları, /etc/apache2/sites-available dizin.
1. İlk etki alanınız için temel bir yapılandırma dosyası oluşturmak üzere, şu komutta etki alanı bilgilerini girin:
sudo nano /etc/apache2/sites-available/phxnap1.com.conf
2. Temel bir yapılandırma dosyası oluşturmak için aşağıdaki yapılandırma bloğunu ekleyin. Bu örnek, ilk test alanını kullanır, phxnap1.com. Web siteniz için doğru alan adını girdiğinizden emin olun:
<VirtualHost *:80>
ServerAdmin webmaster@phxnap1.com
ServerName phxnap1.com
ServerAlias www.phxnap1.com
DocumentRoot /var/www/phxnap1.com/public_html
ErrorLog ${APACHE_LOG_DIR}/phxnap1.com-error.log
CustomLog ${APACHE_LOG_DIR}/phxnap1.com-access.log combined
</VirtualHost>
- Sunucu adı – etki alanını temsil eder
- SunucuAlias – alt alanlar gibi diğer tüm alanları temsil eder
- Doküman kaynağı – etki alanı dosyalarına hizmet vermek için Apache tarafından kullanılan dizin
- Hata Günlüğü, Özel Günlük – günlük dosyalarının konumunu belirtir
Yerleşik bir format yoktur. Ancak, yapılandırma dosyalarınızı alan adına göre adlandırmak “en iyi uygulamadır”.
4. İlk etki alanı için yapılandırma dosyasını düzenledikten sonra, geri kalanı için işlemi tekrarlayın. Bizim durumumuzda şunu çalıştıracağız:
sudo nano /etc/apache2/sites-available/phxnap2.com.conf
5. Ardından, yukarıdaki örnekteki gibi yapılandırma bloğunu ekleyin, değerleri değiştirdiğinizden emin olun. phxnap2.com:
<VirtualHost *:80>
ServerAdmin webmaster@phxnap2.com
ServerName phxnap2.com
ServerAlias www.phxnap2.com
DocumentRoot /var/www/phxnap2.com/public_html
ErrorLog ${APACHE_LOG_DIR}/phxnap2.com-error.log
CustomLog ${APACHE_LOG_DIR}/phxnap2.com-access.log combined
</VirtualHost>
3. Adım: Sanal Ana Bilgisayar Yapılandırma Dosyalarını Etkinleştirin
Sanal konak dosyasını etkinleştirmek için, sanal konak dosyasından sitelerin etkinleştirildiği dizine sembolik bir bağlantı oluşturun. Apache2 bakarken bu dosyayı okur.
1. a2ensite yardımcısı sanal konak dosyasını şu komutla etkinleştirmek için:
sudo a2ensite phxnap1.com
Çıktı şu şekilde görünecektir:
2. İkinci etki alanı için şunu yazarak işlemi tekrarlayın:
sudo a2ensite phxnap2.com
3. Ardından, şu komutu kullanarak yapılandırma dosyası sözdiziminin doğru olduğunu doğrulayın:
sudo apachectl configtest
Terminaldeki mesaj, sözdiziminin doğru olduğunu onaylayacaktır: “Sözdizimi Tamam”
4. Değişikliklerin uygulanması için Apache2’yi yeniden başlatın:
sudo systemctl restart apache2
5. Yapmanız gereken tek şey bir web tarayıcısına gidip web sitelerinize erişmek. Göre index.html daha önce oluşturduğumuz dosya, her etki alanı için uygun mesaj görünmelidir.
phxnap1.com
phxnap2.com
4. Adım: Güvenlik Duvarını Yapılandırın (İsteğe Bağlı)
Ubuntu’da SSH’yi etkinleştirmek için bir kural oluşturarak güvenliği artırmak için güvenlik duvarı ayarlarınızı değiştirin:
sudo ufw allow OpenSSH
Apache’ye erişime izin vermek için kuralları ekleyin.
sudo ufw allow in “Apache Full”
Ardından, güvenlik duvarını etkinleştirin.
sudo ufw enable
diyen bir mesaj görürseniz “Komut mevcut SSH bağlantılarını bozabilir.” Basmak y
. Güvenlik duvarı düzgün çalışıyorsa, “Güvenlik duvarı etkin ve sistem başlangıcında etkinleştirildi.”
Çözüm
Bu öğreticiyi izleyerek, Ubuntu’da bir Apache Sanal Ana Bilgisayarını başarıyla oluşturup yapılandırdınız. Artık birden çok isme dayalı sanal ana bilgisayar oluşturabilir ve tek bir IP adresi kullanarak çok sayıda etki alanını tek bir sunucudan çalıştırabilir/barındırabilirsiniz.