Apache Web Server
Apache Web Server
Bab 5
Web Server Apache terdiri dari beberapa bagian, kode source apache asli
dengan beberapa patch dan beberapa executable tambahan. Sebaiknya kita
gunakan web server apache yang tergolong ‘stable version’, yang mungkin akan
lebih mudah untuk dikompilasi dan akan menghasilkan daemon yang cukup
stabil.
Ambil source yang anda inginkan. Untar apache, php, gd dan ssl ke /usr/src. Untar
patch SSL ke /usr/src/apache_1.2.6.
Pertama kali yang harus anda lakukan adalah melakukan instalasi Apache atau
Webserver pada Linux RedHat anda. Sebelum melakukan instalasi cek terlebih
dahulu apakah apache sudah terinstall pada proses instalasi awal. Jika sudah
terinstall maka cek juga apakah packet apache devel untuk pengembangan telah
terinstall. Sebaiknya tambahkan apache devel untuk berbagai keperluan module
apache seperti php.
apache-devel-1.3.12-25
apache-1.3.12-25
apache- manual-1.3.12-25
Artinya anda sudah melakukan instalasi apache menggunakan rpm. Atau locate
apachectl untuk mencari perintah apache untuk melihat apakah apache sudah
terinstall atau belum.
# rpm - i MySQL-3.23.33-1.i386.rpm
# rpm - i MySQL-3.23.33-1.src.rpm
# rpm - i MySQL-devel-3.23.33-1.i386.rpm
# rpm - i MySQL-shared-3.23.33-1.i386.rpm
# rpm - i MySQL-client-3.23.33-1.i386.rpm
# mysql_install_db
# /etc/rc.d/init.d/mysql restart
# mysqladmin -p password 'password_anda'
# mysql -u root password_anda
# apachectl restart
Buat File test.php di Document Root (lihat httpd.conf bagi pengguna Apache)
# vi test.php
<?php echo("Halo Kalau anda melihat teks ini berarti Instalasi PHP dan Apache
anda sukses..!\n"); ?>
:wq!
Seperti ekstensi frontpage, phtml juga membawa masalah keamanan karena phtml
jalan di bawah uid dari webserver. Pastikan menyalakan safe mode dalam
src/php.h dan batasi search path ke lokasi yang aman. Ada beberapa option lain
dalam php.h yang mungkin ingin Anda ganti. Jika Anda sangat memperhatikan
segi keamanan, kompilasilah php sebagai cgi. Walaupun hal ini akan mengurangi
kinerja dan tidak akan sebagus versi modulenya.
Ketikkan make untuk membuat semua file. Ketika kompilasi selesai, copy
mod_php.* dan libphp.a ke /usr/src/apache_1.2.6/src Tambahkan
Module2 lain yang penulis pakai selain SSL, PHP dan frontpage adalah:
ServerType standalone
Port 80
Listen 80
Listen 443
User wwwrun
Group wwwrun
ServerAdmin [email protected]
ServerRoot /var/httpd
ErrorLog logs/error_log
TransferLog logs/access_log
PidFile logs/httpd.pid
ServerName www.yourhost.com
MinSpareServers 3
MaxSpareServers 20
StartServers 3
SSLCACertificatePath /var/httpd/conf
SSLCACertificateFile /var/httpd/conf/httpsd.pem
SSLCertificateFile /var/httpd/conf/httpsd.pem
SSLLogFile /var/httpd/logs/ssl.log
<VirtualHost www.virt1.com>
SSLDisable
ServerAdmin [email protected]
DocumentRoot /var/httpd/virt1
ScriptAlias /cgi-bin/ /var/httpd/virt1/cgi-bin/
ServerName www.virt1.com
ErrorLog logs/virt1-error.log
TransferLog logs/virt1-access.log
User virt1admin
Group users
</VirtualHost>
<VirtualHost www.virt1.com:443>
ServerAdmin [email protected]
DocumentRoot /var/httpd/virt1
ScriptAlias /cgi-bin/ /var/httpd/virt1/cgi-bin/
ServerName www.virt1.com
ErrorLog logs/virt1-ssl-error.log
TransferLog logs/virt1-ssl-access.log
User virt1admin
Group users
SSLCACertificatePath /var/httpd/conf
SSLCACertificateFile /var/httpd/conf/httpsd.pem
SSLCertificateFile /var/httpd/conf/httpsd.pem
SSLLogFile /var/httpd/logs/virt1-ssl.log
SSLVerifyClient 0
SSLFakeBasicAuth
</VirtualHost>
<VirtualHost www.virt2.com>
SSLDisable
ServerAdmin [email protected]
DocumentRoot /var/httpd/virt2
ScriptAlias /cgi-bin/ /var/httpd/virt2/cgi-bin/
ServerName www.virt2.com
ErrorLog logs/virt2-error.log
TransferLog logs/virt2-access.log
</VirtualHost>
Tergantung dari modules yang dikompilasi, tidak semua directives mungkin ada.
Anda dapat memanggil daftar direktif yang tersedia dengan httpsd -h.
Salin salah satu file contoh dari directori examples- nya php kevirt1 untuk
mengetest phtml.
Secara normalnya server WWW (World Wide Web) adalah sebuah mesin tunggal
yang bertugas memproses HTTP request untuk sebuah WWW site. Atau secara
gampangnya, satu mesin untuk satu WWW site. Sejak pemrosesan dari server
terhadap http request menurun atau rendah, Sumber daya server akan menjadi
terbuang percuma. Dengan menggunakan virtual WWW site memungkinkan
untuk lebih dari satu WWW site diproses dalam ssatu processor. Sebagai
pengganti dari www.domain1.com dan www.domain2.com yang membutuhkan
dua buah peralatan komputer kini dapat diletakkan di satu buah peralatan
komputer dan melakukan pembagian sumberdaya dalam satu komputer tsb.
IP-Aliasing hanya salah satu bagian dari pemecahan masalah virtual host ini. Di
samping itu Domain Name System (DNS) juga harus dikonfigurasikan untuk
memetakan antara www.domain1.com dan www.domain2.com. Jika
domain1.com dan domain2.com adalah domain baru, maka kedua domain itu
harus diregistrasikan dulu ke internic. Saat ini Internic akan memungut biaya $50
pertahun untuk memelihara domain anda. (Catatan idLD P: Saat ini biaya
registrasi Internic telah diturunkan menjadi $75 per dua tahun)
Kebanyakan virtual WWW site juga sebaiknya menyediakan virtual mail, atau
memungkinkan melakukan forwarding semua email virtual domain menuju
masing masing user.
Hal lain yang seharusnya juga dikonfigurasikan oleh penyedia WWW yaitu
Virtual FTP atau memungkinkan untuk mengakses ftp dengan menggunakan
nama host standar yaitu ftp.domain1.com