Selasa, Juni 13, 2006

Mengenai VirtualHost di apache

Pada distribusi Redhat, opsi VirtualHost dimatikan secara default.
Untuk menggunakan Name-based VirtualHost, maka httpd.conf perlu disunting sebagai berikut :

NameVirtualHost *

<VirtualHost *>
ServerAdmin webmaster@northjogja.net
DocumentRoot /var/www/html/
ServerName zeus.northjogja.net
ErrorLog logs/zeus.northjogja.net-error_log
CustomLog logs/zeus.northjogja.net-access_log common
</VirtualHost>

<VirtualHost *>
ServerAdmin webmaster@northjogja.net
DocumentRoot /var/www/html/wiki
ServerName wiki.northjogja.net
ErrorLog logs/wiki.northjogja.net-error_log
CustomLog logs/wiki.northjogja.net-access_log common
</VirtualHost>


Pada konfigurasi di atas ada dua VirtualHost, yaitu :
  • zeus.northjogja.net, yang file-filenya (Document Root) berada di /var/www/html/
  • wiki.northjogja.net, yang file-filenya (Document Root) berada di /var/www/html/wiki

Namun konfigurasi di atas tidak bisa bekerja dengan baik bila mod_ssl terpasang. Bila mod_ssl terpasang, dan konfigurasi terpasang seperti di atas, maka bila httpd direstart, akan muncul pesan error :
[error] VirtualHost _default_:443 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results

Untuk mengatasinya konfgurasi di atas harus diubah seperti berikut :

NameVirtualHost *:80
NameVirtualHost *:443

<VirtualHost *:80>
ServerAdmin webmaster@northjogja.net
DocumentRoot /var/www/html/
ServerName zeus.northjogja.net
ErrorLog logs/zeus.northjogja.net-error_log
CustomLog logs/zeus.northjogja.net-access_log common
</VirtualHost>

<VirtualHost *:80>
ServerAdmin webmaster@northjogja.net
DocumentRoot /var/www/html/wiki
ServerName wiki.northjogja.net
ErrorLog logs/wiki.northjogja.net-error_log
CustomLog logs/wiki.northjogja.net-access_log common
</VirtualHost>

<VirtualHost *:443>
ServerAdmin webmaster@northjogja.net
DocumentRoot /var/www/html/
ServerName zeus.northjogja.net
ErrorLog logs/zeus.northjogja.net-error_log
CustomLog logs/zeus.northjogja.net-access_log common
</VirtualHost>

<VirtualHost *:443>
ServerAdmin webmaster@northjogja.net
DocumentRoot /var/www/html/wiki
ServerName wiki.northjogja.net
ErrorLog logs/wiki.northjogja.net-error_log
CustomLog logs/wiki.northjogja.net-access_log common
</VirtualHost>


Untuk konfigurasi yang lebih kompleks dapat dilihat contohnya di http://httpd.apache.org/docs/2.0/vhosts/examples.html#purename

1 komentar:

madszzz mengatakan...

halooo salam kenalll