Mac OS X de Apache Virtual Host kurulumu

Virtual Host, aynı IP üzerinden farklı domainlerde sitelerin çalıştırılmasına imkan sunan bir yapıdır. Virtual host kullanılarak tek bir IP ile farklı domainler ilişkilendirilip aynı makina üzerinden çalıştırılabilmemizi sağlamaktadır. Bu özellik aynı makina üzerinde farklı sistemlerin çalıştırıldığı birçok projede etkin olarak kullanılmaktadır. Bu özellik tamamen kurulu olan webserveriniz tarafından size sunulmaktadır. En güzel yanı ise virtual host tanımlanmasında herhangi bir sınırın bulunmamasıdır. Şimdi maddeler halinde Mac OS X kurulu bilgisayarınıza Apache virtual host tanımlamalarının nasıl yapıldığı hakkında bilgileri sunacağız. Öncelikle vim veya nano editörlerinden birini seçip terminali sudo ile root moda çekiniz.

1. Virtual Hostun enable edilmesi: 
Mac OS X bilgisayarda Apache kurulduğunda bazen virtual host yapısı disable halde gelmektedir. Bunun enable yani çalışabilir hale getirilebilmesi için aşağıda bulunan komut satırı terminalde çalıştırılmalıdır.
sudo nano /etc/apache2/httpd.conf
Yukarıdaki komutla birlikte Apache servere ait konfigürasyon dosyasına erişmiş oluyoruz. Bu dosya içerisinde 'vhosts' ifadesini aratıp önünü konulan # karakteri varsa bunu kaldırmamız gerekmektedir. Çünkü bu karakter mevcut bulunan satırın çalışırlığını iptal etmektedir.
# Virtual hostlar 

Include /private/etc/apache2/extra/httpd-vhosts.conf
# karakterini vhosts ifadesinin geçtiği satırdan kaldırmamızla birlikte Virtual Host enable hale getirildi.
 
2. Örnek Virtual Host eklenmesi: 
Şimdi sıra Apache'de yeni virtual host tanımlamalarının yapılmasına geldi. Aşağıda yapılan kodlama ile birlikte httpd-vhosts.conf dosyasına erişebiliriz:
sudo nano /etc/apache2/extra/httpd-vhosts.conf
Örnek olarak domaini yazilimdersi.info olan bir virtual host tanımlaması gerçekleştirmek istediğimizde aşağıda bulunan satırları örnek olarak bu dosyanın en alt satırına ekleyebiliriz:
<VirtualHost *:80> 

    ServerName yazilimdersi.info 
    ServerAlias www.yazilimdersi.info
    DocumentRoot "/Users/yazilim/Sites/yazilimdersi" 
    ErrorLog "/private/var/log/apache2/apple.com-error_log" 
    CustomLog "/private/var/log/apache2/apple.com-access_log" common 
    ServerAdmin [email protected] 
    
    <Directory "/Users/yazilim/Sites/yazilimderi"> 
        Options Indexes FollowSymLinks 
        AllowOverride All 
        Order allow,deny 
        Allow from all 
    </Directory> 

</VirtualHost>
Yukarıdaki kod parçacığında Sites altında yazilimdersi dizini oluşturmanız gerekmektedir. Projenizi bu dizin altına ekleyebilirsiniz.

3. Domainin local makinaya yönlendirilmesi: 
Aşağıda bulunan kodlama ile hosts dosyasına erişim sağlayabiliriz:
sudo nano /etc/hosts
Dosyaya erişim sağladıktan sonra aşağıdaki kodlama ile domainleri locale ekleyelim.
127.0.0.1 yazilimdersi.info www.yazilimdersi.info
Aşağıdaki komutla apache sunucunun restart edilmesi sağlanmalıdır.
sudo apachectl restart
Bu komutla birlikte yaptığınız düzenleme çalışır hale gelecektir. Artık browserinizi açıp http://yazilimdersi.info yazdığınızda localinizde bulunan kodlamanın çalıştığını göreceksiniz.

comments powered by Disqus