Apache web sunucusu, Apache Software Foundation tarafından geliştirilen ve sürdürülen en popüler açık kaynaklı web sunucularından biridir. Apache, Linux işletim sistemlerinde açık ara en yaygın kullanılan web sunucusu uygulamasıdır, ancak Windows, MAC OS, OS/2 vb. gibi hemen hemen tüm işletim sistemi platformlarında kullanılabilir. Geliştiricilerin içeriklerini İnternet üzerinden yayınlamalarına olanak tanır.
Bu makale, Debian 11’de (Bullseye) Apache web sunucusunun nasıl kurulacağını ve yapılandırılacağını açıklamaktadır. Aynı adımlar eski Debian 10 sürümünde de çalışır ve orada da test edilmiştir.
Apache 2’yi Debian Linux’a kurun
Apache2’yi resmi Ubuntu depolarını kullanarak sisteminize kurmak için aşağıdaki adımları izleyin.
1. Adım: Sistem havuzlarını güncelleyin
Öncelikle işletim sistemimizde paket kaynaklarını güncellememiz gerekiyor. Bunu yapmak için terminalde sudo olarak aşağıdaki komutu çalıştırın:
$ sudo apt update
Parola istendiğinde, sudo parolasını girin.
Adım 2: Apache 2’yi apt komutuyla kurun
Bu adımda, aşağıdaki komutu kullanarak Apache2 web sunucusunu kurun:
$ sudo apt install apache2
Kuruluma devam etmeniz için size bir Y/n seçeneği sunulacaktır. Devam etmek için y’ye basın.
3. Adım: Apache kurulumunu doğrulayın
Kurulum tamamlandıktan sonra, Terminal’de aşağıdaki komutu çalıştırarak kurulu olan Apache sürümünü görüntüleyebilirsiniz. Bu şekilde, Apache’nin sisteminize başarıyla yüklendiğini de doğrulayabilirsiniz.
$ apache2 -version
Ubuntu Güvenlik Duvarını Yapılandırma
Sisteminizde UFW güvenlik duvarı çalışıyorsa, harici kullanıcıların erişebilmesi için belirli web bağlantı noktalarına izin vermeniz gerekir. Bunun için Terminal’de aşağıdaki komutları çalıştırın:
$ sudo ufw allow 80/tcp $ sudo ufw allow 443/tcp
Ardından, bağlantı noktalarına izin verilip verilmediğini doğrulamak için aşağıdaki komutu çalıştırın.
$ sudo ufw status
Apache Web Sunucusunu Yapılandırma
1. Adım: Apache hizmetinin çalıştığını doğrulayın
Kurulumdan sonra Apache web servisi otomatik olarak çalışmaya başlar. Ancak emin olmak için Terminal’de aşağıdaki komutu çalıştırın:
$ sudo systemctl status apache2
Sonuç şuna benzer olmalıdır:
2. Adım: Apache Web sunucusunun çalıştığını doğrulayın
Apache web sunucusundan bir web sayfası isteyerek Apache web sunucusunun düzgün çalışıp çalışmadığını doğrulayabilirsiniz.
Sunucunuzun IP adresini bulmak için Terminal’de aşağıdaki komutu yürütün.
$ hostname -I
IP adresini bulduktan sonra, http:// ve ardından web sunucunuzun IP adresini aşağıdaki gibi yazın:
http://server_IP
Yukarıdaki IP adresini girerek aşağıdaki varsayılan Apache sayfasını göreceksiniz.
Apache’de Sanal Bilgisayarları Kurma
Apache’deki sanal bilgisayarlar, tek bir sunucuda birden çok web sitesi çalıştırmanıza olanak tanır. Burada Apache web sunucusunda sanal bilgisayar kuracağız. Bunun için öncelikle Apache’de varsayılan olarak bulunan sunucu bloğunu kullanarak testdomain.info adlı bir web sitesi oluşturacağız.
1. Adım: Bir alan adı ayarlayın
Öncelikle sanal hostumuz testdomain.info için /var/www adresinde bir dizin oluşturacağız. Bunun için aşağıdaki komutu kullanacağız:
(Not: testdomain.info’yu kendi alan adınızla değiştirin.)
$ sudo mkdir -p /var/www/testdomain.info/html
Şimdi aşağıdaki komutları kullanarak mülkiyeti ve izinleri değiştirin:
$ sudo chown -R $USER:$USER /var/www/testdomain.info/html
$ sudo chmod -R 755 /var/www/testdomain.info
Şimdi testdomain.info sitemizi test etmek için örnek bir index sayfası oluşturacağız. Bunun için nano düzenleyiciyi kullanarak aşağıdaki gibi bir HTML dosyası oluşturacağız:
$ nano /var/www/testdomain.info/html/index.html
Dizin sayfası için aşağıdaki satırları ekleyin:
<html> <head> <title>Welcome to the page testdomain.info!</title> </head> <body> <h1>You got Lucky! Your testdomain.info server block is up!</h1> </body> </html>
Bittiğinde, kaydetmek için Ctrl+O’ya ve ardından dosyadan çıkmak için Ctrl+X’e basın.
Şimdi aşağıdaki komutu kullanarak sunucunuzun içeriğine hizmet edecek bir sanal bilgisayar dosyası oluşturacağız:
$ sudo nano /etc/apache2/sites-available/testdomain.info.conf
Şimdi alan adınız için aşağıdaki yapılandırma ayrıntılarını ekleyin:
<VirtualHost *:80> ServerAdmin [email protected] ServerName testdomain.info ServerAlias www.testdomain.info DocumentRoot /var/www/testdomain.info/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Bittiğinde, kaydetmek için Ctrl+O’ya ve ardından dosyadan çıkmak için Ctrl+X’e basın.
2. Adım: Etki alanı yapılandırma dosyasını etkinleştirin
Şimdi aşağıdaki komutu kullanarak sanal host dosyasını etkinleştirin:
$ sudo a2ensite testdomain.info.conf
Şimdi aşağıdaki komutu kullanarak varsayılan Apache yapılandırmalarını devre dışı bırakalım:
$ sudo a2dissite 000-default.conf
Değişiklikleri uygulamak için aşağıdaki komutu kullanarak Apache2 hizmetini yeniden başlatın:
$ sudo systemctl restart apache2
3. Adım: Hataları test edin
Şimdi herhangi bir sözdizimi hatası için yapılandırmayı test edin:
$ sudo apache2ctl configtest
In case there is no error, you will receive the following output.
Bazı durumlarda, aşağıdaki hatayı alabilirsiniz (bu durumda, bir Debian 10 sistemi üzerindeki testlerimiz sırasında meydana geldi):
Bu hatayı çözmek için, aşağıdaki komutu yürüterek servername.conf dosyasını düzenleyin:
$ sudo nano /etc/apache2/conf-available/servername.conf
İçine şu satırı ekleyin:
ServerName testdomain.info
Bittiğinde, kaydetmek için Ctrl+O’ya ve ardından dosyadan çıkmak için Ctrl+X’e basın.
Bundan sonra aşağıdaki komutu çalıştırın:
$ sudo a2enconf servername
Şimdi Apache2’yi yeniden yükleyin:
$ systemctl reload apache2
Bittiğinde, yapılandırma dosyasını test etmek için aşağıdaki komutu tekrar çalıştırın:
$ sudo apache2ctl configtest
Şimdi hatanın kaldırıldığını göreceksiniz.
4. Adım: Apache’nin alan adınızı sunup sunmadığını test edin
Şimdi tarayıcıyı açın ve şuraya gidin:
http://testdomain.info
testdomain.info’yu kendi alan adınızla değiştirin.
Aşağıdaki dizin sayfası artık tüm web sitelerinize erişebildiğinizi gösteriyor.
Bazı Yaygın Apache Yönetim Komutları
Apache hizmetlerini yönetmek için kullanılabilecek en yaygın komutlardan bazıları şunlardır:
Apache sunucusunu başlatmak için aşağıdaki komutu kullanın:
$ sudo systemctl start apache2
Apache sunucusunu durdurmak için aşağıdaki komutu kullanın:
$ sudo systemctl stop apache2
Apache sunucusunu yeniden başlatmak için aşağıdaki komutu kullanın:
$ sudo systemctl restart apache2
Apache sunucusunu yeniden yüklemek için aşağıdaki komutu kullanın:
$ sudo systemctl reload apache2
Hizmeti her zaman açılışta başlatmak için aşağıdaki komutu kullanın:
$ sudo systemctl enable apache2
Apache sunucusunu devre dışı bırakmak için aşağıdaki komutu kullanın:
$ sudo systemctl disable apache2
Bu yazıda, bir Debian 11 veya Debian 10 işletim sisteminde Apache web sunucusunun nasıl kurulacağını ve yapılandırılacağını öğrendik. Güvenlik duvarındaki değişiklikleri, sanal ana bilgisayarı kurmayı ve bazı komutları kullanarak Apache hizmetlerini yönetmeyi içeren bazı temel yapılandırmaları yaptık.
Yazının orijinalini buradan okuyabilirsiniz.
Kariyerime 26 yıl önce başladım. Windows ve Linux sistemlerinin kurulumu, yapılandırılması, yönetimi ve bakımı dahil olmak üzere birden fazla sistem üzerinde uzmanlaştım.
Açık kaynak dünyasındaki en son gelişmelerden haberdar olmaktan ve Linux hakkındaki en son araçları, özellikleri ve hizmetleri denemekten hoşlanıyorum.
Son 6 yıldır sistem ve ağ yöneticisi olarak görev yapıyorum ayrıca Pardus Dönüşüm Projesini yönetiyorum ve Pardus İşletim Sisteminin yaygınlaşması adına uğraş gösteriyorum.
Boş zamanlarımda açık kaynaklı uygulamaların Türkçe çevirisine katılıyorum ve The Document Foundation üyesiyim.