Sebelum anda melakukan instalasi server sebaiknya anda sudah memiliki source Apache, PHP dan MySQL. Tetapi jika anda belum memilikinya anda dapat mendownloadnya di :
Apache httpd-2.0.47.tar.gz (http://httpd.apache.org/download.cgi)
PHP php-4.3.3.tar.gz (http://www.php.net/downloads.php)
MySQL mysql-5.1.61 (msi atau tar.gz) (mysql-5.1.61)
Setelah anda mendapatkan source tersebut, anda dapat mengikuti langkah-langkah instalasi seperti di bawah ini :
Instalasi Apache
- Buatlah grup dengan nama websrv
[root@localhost]#groupadd websrv
- Buat user dengan privilege minimum
[root@localhost]#adduser websrv -g websrv -s /sbin/nologin -d /usr/local/apache
- Ekstrak file source apache
[root@localhost]#tar -zxvf httpd-2.0.47.tar.gz
- Masuk ke dalam direktori apache yang sudah di ekstrak
[root@localhost]#cd httpd-2.0.47
- Configure apache dengan DSO support
[root@localhost]#./configure --prefix=/usr/local/apache --enable-mods-shared=all --enable-so
- Compile source apache
[root@localhost]#make
- Install file binari dan file lainnya yang sudah anda compile tadi
[root@localhost]#make install
- Tambahkan baris “/usr/local/apache/modules" ke dalam /etc/ld.so.conf
[root@localhost]#echo "/usr/local/apache/modules" >> /etc/ld.so.conf
- Buatlah cache dan links untuk share libs
[root@localhost]#ldconfig
Langkah selanjutnya di bawah ini perlu perhatian anda lebih detail :
- Buka file /usr/local/apache/conf/httpd.conf dengan menggunakan editor, temukan AddType directive dan tambahkan setelahnya baris berikut ini :
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
Note : setelah ekstensi .php anda dapat menambahkan ekstensi lain yang anda inginkan dengan syntax : AddType MIME-type extension [extension]
- Cari DirectoryIndex Directive dan set daftar file yang akan digunanakan dalam php nantinya. Server akan menjalankan yang paling awal dari directive tersebut. Sebagai contoh, index.php akan dijalankan jika file tersebut ditemukan dan jika tidak maka index.html yang akan di jalankan :
DirectoryIndex index.php index.html
- Cari User dan Group Directive. Ubah sesuai dengan yang sudah anda buat di awal :
User websrv
Group websrv
- Cek kembali perubahan yang sudah anda lakukan, simpan file dan lanjut ke langkah berikutnya.
- Ubah kepemilikan folder apache to websrv.websrv
[root@localhost]#chown -R websrv.websrv /usr/local/apache
- Buat grup dengan nama mysql
[root@localhost]#groupadd mysql
- Tambahkan user mysql dengan minimum privilege
[root@localhost]#adduser mysql -g mysql -s /sbin/nologin -d /usr/local/mysql
- Ekstrak file source MySQL
[root@localhost]#tar -zxvf mysql-4.0.16.tar.gz
- Masuk ke dalam folder MySQL yang sudah anda ekstrak sebelumnya
[root@localhost]#cd mysql-4.0.16
- Configure MySQL server dengan semua parameter charset
[root@localhost]#./configure --prefix=/usr/local/mysql --with-charset=latin1 --with-extra-charsets=all
- Compile source
[root@localhost]#make
- Install file binari dan file lainnya dari file compile sebelumnya
[root@localhost]#make install
- Tambahkan baris "/usr/local/mysql/lib/mysql" ke dalam /etc/ld.so.conf
[root@localhost]#echo "/usr/local/mysql/lib/mysql" >> /etc/ld.so.conf
- Buat cache dan links untuk share libs
[root@localhost]#ldconfig
- Buat dan install database default MySQL
[root@localhost]#/usr/local/mysql/bin/mysql_install_db (Just Here)
- Buat sebuah symbolic link untuk mysql binary
[root@localhost]#ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
- Buat sebuah symbolic link untuk mysqladmin binary
[root@localhost]#ln -s /usr/local/mysql/bin/mysqladmin /usr/bin/mysqladmin
- Ubah ownership dari folder MySQL menjadi mysql.mysql
[root@localhost]#chown -R mysql.mysql /usr/local/mysql
- Ekstrak file source php
[root@localhost]#tar -zxvf php-4.3.3.tar.gz
- Masuk ke dalam direktori php yang sudah di ekstrak
[root@localhost]#cd php-4.3.3
- Konfigurasi PHP sebagai apache module dengan MySQL support
[root@localhost]#./configure --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql
- Compile source file php
[root@localhost]#make
- Install apache module yang sudah di compile
[root@localhost]#make install
- copy php.ini-dist ke /usr/local/lib/php.ini
[root@localhost]#cp ./php.ini-dist /usr/local/lib/php.ini
- Berikan kepemilikan (ownership) apache menjadi websrv.websrv
[root@localhost]#chown -R websrv.websrv /usr/local/apache
** Pada beberapa sistem, tidak ada file ld.so.conf, atau file tersebut tidak digunakan. Anda dapat menggunakan variabel environment LD_LIBRARY_PATH untuk mengetahui direktori tambahan dimana shared libs di temukan.
Jika anda menggunakan kompatibel shell tcsh anda harus menambahkan baris berikut untuk .tcshrc di direktori home anda :
Setenv LD_LIBRARY_PATH $LD_LIBRARY_PATH:/usr/local/mysql/lib/mysql:/usr/local/apache/modules
Untuk kompatibel shell bash anda harus menambahkan baris berikut ke file .bash_profile pada direktori home anda :
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mysql/lib/mysql:/usr/local/apache/modules
export LD_LIBRARY_PATH
kemudian , periksa apa yang sudah ada di library loading path anda :
echo $LD_LIBRARY_PATH
Untuk dapat menjalankan MySQL server sangat mudah, yaitu
[root@localhost]#/usr/local/apache/bin/apachectl start
[root@localhost]#/usr/local/mysql/share/mysql/mysql.server start
(Jika anda ingin mematikan MySQL server, anda dapat menggunakan command tersebut dengan mengubah start menjadi stop)
Untuk mencoba instalasi anda, buat di file php dengan nama phpinfo.php di direktori /usr/local/apache/htdocs, dan masukkan baris dibawah ini :
<?
phpinfo();
?>
Buka file tersebut di browser anda : http://localhost/phpinfo.php
Kemudian, anda perhatikan konfigurasi php anda