Saturday, July 14, 2012

Konfigurasi Virtual Host XAMPP di Linux, dan Windows

Sudah lama diabaikan, saya mau coba post sekaligus sebagai catatan pribadi. Kali ini berhubungan dengan konfigurasi server apache. 

Bagi yang biasa pakai xampp, biasanya semua source web nya disimpan di folder htdocs. Bayangkan kalau sudah banyak sekali folder yang dibuat, jadi agak berantakan bukan? Akan lebih baik kalau tiap project terorganisir. Ketimbang memakai url http://localhost/project url http://dev.project.com jauh lebih developer friendly. Ditambah lagi jika source nya dipisah ke folder sendiri diluar htdocs, dev.project.com misalnya. Akan sangat memudahkan kita. 

Nah, apache sendiri sudah mendukung fasilitas itu yang dinamakan dengan Virtual Host. Dengan sedikit konfigurasi kita bisa dapat environment yang kita mau. Prinsip dasarnya pertama harus melakukan perubahan di file hosts. Kemudian menambahkan konfigurasi VirtualHost di apache. Namun dari pengalaman saya, butuh konfigurasi berbeda untuk sistem operasi yang berbeda. 


Berikut ini konfigurasi yang berhasil saya buat di dua sistem operasi yaitu Linux dan Windows. 
Asumsikan kita ingin membuat sebuah virtual host dev.edbapp.com dengan lokasi foldernya masing-masing.  

Linux (Ubuntu)

Xampp biasanya diinstall secara default di folder /opt, dan untuk tulisan kali ini kita pakai default itu. Sebagai catatan, kita harus punya akses sebagai root untuk beberapa konfigurasi. Kemudian asumsikan lokasi folder dari source code web nya terletak di /home/dai/www/dev.edbapp.com.

Langkah pertama, edit file /etc/hosts
Pertama edit dulu file hosts yang berada di /etc/hosts dan tambahkan konfigurasi seperti dibawah ini :
#localhost ini dipakai supaya default htdocs tetap aktif
127.0.0.1         localhost
127.0.0.1         dev.edbapp.com 

Langkah kedua, edit file httpd.conf
Buka file /opt/lampp/etc/httpd.conf dan pastikan line dibawah ini tidak di comment (diawali dengan tanda #)
# Virtual hosts
Include etc/extra/httpd-vhosts.conf

Langkah ketiga, edit file /opt/lampp/etc/extra/httpd-vhosts.conf
Pada file tersebut tambahkan konfigurasi seperti dibawah ini :
<VirtualHost *:80>
    ServerAdmin admin@localhost
    DocumentRoot /opt/lampp/htdocs
    ServerName localhost
    ServerAlias localhost
    ErrorLog logs/localhost.error_log
    CustomLog logs/localhost.access_log common
    <Directory "/opt/lampp/htdocs">
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin admin@dev.edbapp.com
    DocumentRoot /home/dai/www/dev.edbapp.com
    ServerName dev.edbapp.com
    ServerAlias dev.edbapp.com
    ErrorLog logs/dev.edbapp.com.error_log
    CustomLog logs/dev.edbapp.com.access_log common
    <Directory "/home/dai/www/dev.edbapp.com">
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>
Restart xampp kemudian coba buka url http://dev.edbapp.com di browser untuk memastikan konfigurasi berhasil.


Windows 7

Di Windows 7 xampp biasanya diinstall secara default di drive System. Asumsikan untuk tulisan kali inixampp diinstall di C:\xampp. Kemudian lokasi folder dari source code web nya terletak di C:\Users\dai\www\dev.edbapp.com.

Langkah pertama, edit file C:\Windows\System32\drivers\hosts
Pertama edit dulu file hosts yang berada di C:\Windows\System32\drivers\hosts dan tambahkan konfigurasi seperti dibawah ini :
#localhost ini dipakai supaya default htdocs tetap aktif
127.0.0.1         localhost
127.0.0.1         dev.edbapp.com 

Langkah kedua, edit file  C:\xampp\apache\conf\httpd.conf
Buka file C:\xampp\apache\conf\httpd.conf dan pastikan line dibawah ini tidak di comment (diawali dengan tanda #)
# Virtual hosts
Include "conf/extra/httpd-vhosts.conf"

Langkah ketiga, edit file C:\xampp\apache\conf\extra\httpd-vhosts.conf
Pada file tersebut tambahkan konfigurasi seperti dibawah ini :

<VirtualHost *:80>
    ServerAdmin admin@localhost.com
    DocumentRoot "C:/xampp/htdocs"
    ServerName localhost
    ServerAlias localhost
    <Directory "C:/xampp/htdocs">
        Options Indexes FollowSymLinks Includes ExecCGI
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin admin@dev.edbapp.com
    DocumentRoot "C:\Users\dai\www\dev.edbapp.com"
    ServerName dev.edbapp.com
    ServerAlias dev.edbapp.com
    ErrorLog logs/dev.edbapp.com.error_log
    CustomLog logs/dev.edbapp.com.access_log combined
    <Directory "C:\Users\dai\www\dev.edbapp.com">
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>
Restart xampp kemudian coba buka url http://dev.edbapp.com di browser untuk memastikan konfigurasi berhasil.

Sebagai tambahan, bagi pengguna MAMP di Mac, berikut ini konfigurasi yang berhasil saya lakukan
NameVirtualHost *
<VirtualHost *>
    DocumentRoot "/Applications/MAMP/htdocs"
    ServerName localhost
</VirtualHost>
<VirtualHost *>
    DocumentRoot "/Users/adikurniawan/www/dev.edbapp.com"
    ServerName dev.edbapp.com
</VirtualHost>

Demikian sedikit sharing kali ini, semoga bermanfaat..

5 comments:

  1. Perkenalkan, saya dari tim kumpulbagi. Saya ingin tau, apakah kiranya anda berencana untuk mengoleksi files menggunakan hosting yang baru?
    Jika ya, silahkan kunjungi website ini www.kumpulbagi.com untuk info selengkapnya.

    Oh ya, di sana anda bisa dengan bebas mendowload music, foto-foto, video dalam jumlah dan waktu yang tidak terbatas, setelah registrasi terlebih dahulu. Gratis :)

    ReplyDelete
  2. terimakasih atas info artikelnya.salam st3telkom

    ReplyDelete
  3. terimakasih atas informasinya sangat membantu.salam st3telkom

    ReplyDelete