Apache, dünya çapında en yaygın kullanılan web sunucusu programıdır. Apache Yazılım Vakfı tarafından geliştirilmekte olup özgür Apache Lisansı ile lisanslanmıştır. Bütün Web programlama dillerini desteklediği gibi virtualhost tanımlama, SSL desteğini de beraberinde getirmektedir.
Apache'nin yeni versiyonu Apache2'dir. Apache2'nin ayar dosyaları
/etc/apache2
dizininde bulunmaktadır ve apache2.conf temel ayar dosyasıdır.
Web yayını yapacağımız siteler ile ilgili ayarlar ise (örneğin virtualhost, ssl)
/etc/apache2
dizini altındaki sitesavailable dizini altındaki /etc/apache2/sitesavailable/default
dosyasında tutulmaktadır.Apache2 kurulumu
Yalnıca Apache2 sunucusunu kurmak istiyorsanız şu kodu kullanabilirsiniz.
sudo apt-get install apache2
Sorun giderme
apache2: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName şeklinde hata iletisi alıyorsanız komut satırından "sudo nano" ya da çalıştır menüsünden "gksudo gedit" ile yeni bir metin dosyası yaratmalısınız. "Nano" metin düzenleyici için
sudo nano /etc/apache2/conf.d/fqdn
ServerName localhost
Bunların tamamı tek bir komutla da yapılabilir:echo "ServerName localhost" | sudo tee /etc/apache2/conf.d/fqdnSanal sunucular
Apache farklı konfigurasyon dosyaları anlamına gelen "sites" olgusuna sahiptir. Bu konfigurasyonlar /etc/apache2/sites-available dizininde bulunur. Öntanımlı olarak, default olarak adlandırılan, http://localhost ya da http://127.0.0.1 adresini tarayıcıda açtığınız zaman karşınıza çıkan bir siteye vardır. Birden fazla site konfigurasyonuna sahip olabilir ve yalnızca ihtiyacınız olanları etkinleştirebilirsiniz.Örnek olarak,bu belge ön tanımlı sitenin /home/kullanıcı/public_html olmasını istiyebilirsiniz. Bunu yapmak için yeni bir site yaratıp bunu Apache2 içinde etkinleştirmenbiz gerekmektedir. Bu işlem için şu adımları izlemelisiniz.1. Öntanımlı web sitesini başlangıç noktası olsun diye kopyalayın.sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/mysite2. Yeni konfigurasyon dosyasını "sudo nano" ile komut satırından ya da "gksudo gedit" ile çalıştır menüsünden bir metin editörü ile açın:gksudo gedit /etc/apache2/sites-available/mysite3. DocumentRoot bölümünde yeni yeri gösterin. Örnek: /home/kullanıcı/public_html4. Directory yolunu değiştirin, <Directory /var/www/> kısmını <Directory /home/user/public_html/> şeklinde düzenleyin.5. Ayrıca her site için ayrı kayıt tutabilirsiniz. Bunu yapmak için ErrorLog ve CustomLog ile belirtilenleri değiştirin. Bunu yapmak zorunlu değildir, fakat çok fazla siteniz olduğunda kullanışlı olur.6. Dosyayı kaydedin.Şimdi eski siteyi etkisizleştirip, yeni sitenizi etkinleştirmemiz gerekiyor. Ubuntu bu iş için iki ufak araca sahip: a2ensite (apache2enable site) ve a2dissite (apache2disable site)sudo a2dissite default && sudo a2ensite mysiteApache2'yi yeniden başlatmamız gerekmektedir.sudo /etc/init.d/apache2 restartEğer /home/kullanıcı/public_html dizinini yaratmadıysanız, bir uyarı mesajı alacaksınız. Yeni sitemizi denemek için /home/kullanıcı/public_html dizini içinde bir dosya yaratabilirsiniz:echo '<b>Merhaba! Site çalışıyor!</b>' > /home/user/public_html/index.htmlSon olarak da http://localhost sayfasını açarak test etmelisiniz. Eğer Apache2 sunucunuz çalışıyorsa tarayıcı pencerenizde Merhaba! Site çalışıyor! mesajını alacaksınızApache özelleştirmeleri
Eğer Apache2 ile MySQL etkileşimi kuracaksak aşağıdaki komutla apache için mysql kütüphanelerini kurmalısınız.sudo apt-get install libapache2-mod-auth-mysqlYüklenen modülü etkinleştirmek içinsudo a2enmod auth_mysql sudo service apache2 restartkomutlarını vermelisiniz.Eğer SSL (HTTPS) olarak web sunucumuzun çalışmasını istiyorsanız şu komutla gerekli paketi kurabilirsiniz.sudo a2enmod ssl sudo service apache2 restartDaha sonra sertifika oluşturarak sertifika tanımlarımızı aşağıdaki gibi ayar dosyamıza ekleyebiliriz.SSLEngine onSSLOptions +FakeBasicAuth +ExportCertData +CompatEnvVars +StrictRequireSSLCertificateFile /etc/ssl/certs/ozgurkaratas.com.crtSSLCertificateKeyFile /etc/ssl/private/ozgurkaratas.com.keyApache2 sunucumuzun HTTPS (SSL destekli) çalışması için son olarak ports.conf dosyasına şu satır eklenmelidir.Listen 443Son olarak Apache sunucunuzu baştan başlatmalısınız.sudo /etc/init.d/apache2 restart
Yorumlar
Yorum Gönder