Ketika ditanya server apa yang paling sering digunakan, jawaban akan
tertuju kepada web server. Web server memberikan layanan kepada user
berupa halaman web yang bisa di
request melalui protokol http.
Pada kesempatan ini, saya tidak akan terlalu mendalam kepada definisi dari web server secara teori, karena untuk teori bisa di
search untuk lebih lengkapnya. Saat ini saya akan lebih fokus pada instalasi web server Apache dan PHP pada server berbasis Linux.
Sebenarnya cara paling mudah untuk instalasi web server adalah
menggunakan repository dari distro masing – masing. Tapi saat ini saya
akan membahas instalasi web server dengan melakukan compile secara
manual dari source code. Dengan melakukan compile dari source akan
memudahkan administrasi dan efesiensi terhadap webserver karena kita
dapat memilih modul – modul apa saja yang akan diinstall pada webserver
kita bahkan lokasi file konfigurasinya bisa kita tentukan.
Cara install Apache dan PHP adalah sebagai berikut :
download apache dari situs resminya, versi terbaru 2.2.19 dengan perintah :
ekstrak paket instalasi apache
1 | tar -xvzf httpd-2.2.19.tar.gz |
selanjutnya lakukan perintah configure untuk memilih modul – modul apa saja yang akan diinstal bersama dengan apache
1 | ./configure --enable-so --enable-authn-dbm --enable-authn-dbd --enable-auth-digest --enable-isapi --enable-cache --enable-disk-cache --enable-mem-cache --enable-ssl --enable-cgi --with-ssl --enable-cgid --enable-dav |
selanjutnya build paket apache dan modul yang dan lakukan instalasi
instalasi apache selesai, secara default lokasi instalasi apache yang
tadi diinstall akan berada pada direktori /usr/local/apache2. Untuk
mengetahui apache telah terinstall, service apache harus diaktifkan
dengan perintah :
1 | /usr/local/apache2/bin/apachectl start |
kemudian akses melalui browser ke http://localhost. Jika muncul pesan
It’s Work berarti apache sudah berjalan pada server.
Untuk instalasi php, pastikan service websever apache tidak sedang
dalam keadaan up. Untuk mematikan sementara webserver apache, dilakukan
dengan perintah :
1 | /usr/local/apache2/bin/apachectl stop |
Selanjutnya untuk melakukan instalasi php dengan cara sebagai berikut :
download php dari situs resminya atau mirror yang paling dekat, kemudian ekstrak file instalasi php
2 | wget http://id.php.net/distributions/php-5.3.6.tar.gz |
3 | tar -zxvf php-5.3.6.tar.gz |
konfigurasi instalasi php untuk mengaktifkan modul – modul yang akan diinstall bersama php
1 | ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc/ --with-libdir=lib64 --with-mysql --with-zlib --with-gd --enable-mbstring --enable-exif --enable-gd-native-ttf --with-freetype-dir=/usr --with-jpeg-dir=/usr --with-xmlrpc --without-pdo-sqlite --without-sqlite --disable-posix --disable-ipv6 --with-curl --enable-fastcgi |
Selanjutnya compile source php dan lakukan instalasi dengan perintah :
php tersebut diinstall pada lokasi sesuai dengan prefix yang dipakai
pada konfigurasi, yaitu pada direktori /usr/local/php. Langkah
selanjutnya adalah melakukan configurasi php. File konfigurasi default
sudah tersedia pada source php yang di download tadi, jadi kita tinggal
memindahkan file konfigurasi tersebut dengan perintah :
1 | cp /usr/src/php-5.3.6/php.ini-production /usr/local/php/etc/php.ini |
Selanjutnya lakukan penyesuaian pada config apache sehingga bisa
membaca sintaks php dengan teks editor kesayangan anda, untuk membuat
atau mengedit file konfigurasi dengan vim menggunakan perintah :
1 | vim /usr/local/apache2/conf/httpd.conf |
Pada konfigurasi tersebut yang perlu dipastikan adalah terdapat baris
yang berisi ” LoadModule php5_module modules/libphp5.so” kemudian perlu
ditambahkan pada konfigurasi agar bisa menghandle sintaks php. Conoth
konfigurasi apache minimal adalah sebagai berikut :
054 | ServerRoot "/usr/local/apache2" |
098 | LoadModule php5_module modules/libphp5.so |
102 | <IfModule !mpm_netware_module> |
104 | <IfModule !mpm_winnt_module> |
162 | ServerAdmin you@example.com |
190 | DocumentRoot "/usr/local/apache2/htdocs" |
210 | Options FollowSymLinks |
238 | <Directory "/usr/local/apache2/htdocs"> |
264 | Options Indexes FollowSymLinks |
300 | DirectoryIndex index.html |
336 | ErrorLog "logs/error_log" |
350 | <IfModule log_config_module> |
360 | LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined |
362 | LogFormat "%h %l %u %t \"%r\" %>s %b" common |
364 | <IfModule logio_module> |
368 | LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio |
386 | CustomLog "logs/access_log" common |
400 | <IfModule alias_module> |
450 | ScriptAlias /cgi-bin/ "/usr/local/apache2/cgi-bin/" |
454 | <IfModule cgid_module> |
476 | <Directory "/usr/local/apache2/cgi-bin"> |
506 | DefaultType text/plain |
508 | <IfModule mime_module> |
518 | TypesConfig conf/mime.types |
550 | AddType application/x-compress .Z |
552 | AddType application/x-gzip .gz .tgz |
714 | SSLRandomSeed startup builtin |
716 | SSLRandomSeed connect builtin |
722 | DirectoryIndex index.php |
726 | <IfModule mime_module> |
730 | AddHandler php5-script php |
732 | AddType application/x-httpd-php-source .phps |
Setelah konfigurasi apache, restart service apache untuk mejalankan webserver.
1 | /usr/local/apache2/bin/apachectl restart |
Saat ini, jika instalasi berhasil, maka kita sudah mempunyai
webserver yang bisa mengeksekusi php. Untuk lebih memastikan, buat
halaman web yang menampilkan sistem php yang sedang berjalan pada saat
ini.
1 | vim /usr/local/apache2/htdocs/info.php |
isi dari file info.php tersebut
Kemudian akses via web browser arahkan ke http://localhost/info.php,
jika muncul tampilan berisi informasi versi dan fitur php yang sedang
berjalan, maka anda sukses melakukan instalasi webserver.
http://okagartria.wordpress.com/2011/08/10/install-web-server-di-linux-apache-php/