Instalasi web server

Dalam membangun web server yang pertama kali ini saya mencoba untuk mendokumentasikannya.  Dalam kasus ini, operating system yang saya gunakan adalah FreeBSD 7.x.

FYI, metode instalasi program-program yang akan saya pakai adalah melalui ports. Saya tidak melengkapi dokumentasi dengan metode install lainnya seperti package dan source.

A. KONFIGURASI AWAL

  1. melihat status ethenet komputer :
  2. > ifconfig –a

    Saat melihat interface config(ifconfig) akan ditunjukan jenis interfacenya (em0, vr0, nve0, nfe0, dll)

  3. mengatur gateway
  4. > route add default 167.205.3.1
  5. mengatur rc.conf
  6. > cd /etc
    > ee rc.conf

    buat konfigurasi awal tambahkan disana:

          usbd_enable=”YES”
          sshd_enable="YES"
          # ifconfig_vr0=”DHCP"
          # konfigurasi di atas dipakai jika ingin DHCP
          ifconfig_vr0="inet 167.205.3.44/26"
          # vr0 adalah interface dari ethernet komputer Anda(pada point A.0)
          hostname=”arc.itb.ac.id"

    NOTES: sshd_enable berfungsi awal mesin dapat kita lakukan ssh
    Cara lain untuk setting IP di mesin (interface nvidia)

    > ifconfig nve0 inet 167.205.3.44 netmask 255.255.255.224 up

    karena setingan ini rawan ip-conflict, sehingga untuk mengeditnya dapat dilakukan cara diatas dengan edit rc.conf

  7. mengatur resolv.conf
  8. > cd /etc
    > vi resolv.conf

    lakukan konfigurasi awal :

             domain arc.itb.ac.id
             nameserver 167.205.3.1
  9. mengatur make.conf
  10. > cd /etc
    > ee make.conf

    lakukan konfigurasi awal :

    #CFLAGS= -O -pipe
    #COPTFLAGS= -O -pipe
    #NOPROFILE= true
    NO_PF=true
    FETCH_ENV= ftp_proxy=http://cache.itb.ac.id:8080/
    FETCH_ENV= http_proxy=http://cache.itb.ac.id:8080/
    #FETCH_ENV= HTTP_PROXY=http://167.205.3.4:8888/
    MASTER_SITE_OVERRIDE=ftp://ftp.itb.ac.id/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}/
    #MASTER_SITE_OVERRIDE=ftp://ftp.freebsd.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}/
    BATCH=YES
    WITHOUT_X11=YES
    SKIP_DNS_CHECK=YES
    CRYPT_DES=0
    PORT_REPLACES_BASE_BIND8=YES
    PORT_REPLACES_BASE_BIND9=YES
    WITHOUT_ALT_CONFIG_PREFIX=YES
    WITH_OPENSSL_PORT=YES
    #*REMOVE* OPENSSL_OVERWRITE_BASE=NO
    # added by use.perl
    PERL_VER=5.8.7
    PERL_VERSION=5.8.7
  11. restart konfigurasi di /etc/rc.conf
  12. > sh /etc/rc
  13. memeriksa koneksi jaringan
  14. > ping www.itb.ac.id

Ini merupakan konfigurasi minimal

B. UPDATE PORTS

Untuk memperoleh ports-update terbaru diperlukan cara sebagai berikut :

> cd /usr/share/examples/cvsup/

Ubah host name :

Host = linux.ocean.itb.ac.id [keluar]

Ketik perintah berikut :

> csup -g -L 2 ports-supfile

Jika update putus di tengah jalan, dan ingin diulang lagi gunakan perintah :

> csup port-supfile

C. INSTALL PROGRAM

Dalam membangun web server memerlukan beberapa program yang harus di install, dengan
urutan-urutan tertentu. Dari sumber yang saya baca urutannya seperti ini:

  • MySQL
  • apache
  • php
  • php-extension

Mari kita mulai saja dari instalasi mysql

1. MYSQL

masuk ke folder /usr/ports/databases lalu cari folder mysql server yang terbaru
dalam kasus saya mysql server dengan mysql60-server

> cd /usr/ports/databases

lihat directory yang mengandung kata ‘mysql’

> ls -l | grep mysql

kemudian install dengan

> make install

atau

> make install clean

tambahkan konfigurasi di rc.conf

> ee /etc/rc.conf

dengan tambahan dibawah, lalu save dan rehash

   mysql_enable=”YES”
> rehash

install pendukung mysql

> cd /usr/local/mysql
> mysql_install_db

ubah kepemilikan mysql dengan mysql

> chown -R root /usr/local/mysql
> chown -R mysql /usr/local/mysql/var

Ganti group directory mysql menjadi milk mysql
> chgrp -R mysql /usr/local/mysql
Ganti kepemilikan directory bin menjadi milik root

> chown -R root /usr/local/mysql/bin

Untuk mengecek owner dari tiap-tiap directory mysql

> ls /usr/local/mysql –l

Kemudian jalankan daemon mysql

> mysqld_safe –user=mysql &

Coba jalankan mysql

> mysql-server onestart

test apakah sudah hidup

> ps –ax | grep mysql

masuk ke mysql dengan:

> mysql -u root (jika tanpa password)
> mysql -u root -p password (dengan password)

set password mysql root dengan:

> mysqladmin -u root password passnya(jika tanpa password)
> mysqladmin -u root -p password passnya(dengan password)

2. Apache

Masuk ke directory ports

> cd /usr/ports/www/
> ls -l | grep apache

masuk ke folder apache versi terbaru(dalam kasus ini apache22)

> cd apache22

konfig2 dengan

> make config

trus install bro..

> make install

atau

> make install clean

tambahkan konfigurasi berikut di file /etc/rc.conf :

> ee /etc/rc.conf
     apache22_enable =”YES”
     apache22_enableflags=”YES”
> rehash

3. Install PHP

a. Sebelum melakukan instalasi PHP, terlebih dahulu install aplikasi berikut :

  • mcrypt (/usr/ports/security/mcrypt) dan libmcrypt (/usr/ports/security/libmcrypt) <– yang ini gak diinstall karena gak nemu reponya
  • db4 (/usr/ports/databases/db4) dan gdbm (/usr/ports/databases/gdbm)
  • gd (/usr/ports/graphics/gd)
  • libxml2 (/usr/ports/textproc/libxml2)

b. Lakukan installasi melalui ports:

> cd /usr/ports/lang/php5

c. ubah configurasinnya dengan perintah :

daaaaaaaaaaaaaaaamn!!! don’t ever forget to check BUILD APACHE MODULE. It make me sick to find this problem all over the night and made me has cold this saturday!!

> make config

centang pada opsi [ ]APACHE Build Apache Module
d. setelah itu install dengan perintah :

> make install

atau

> make install clean

e. setelah proses instalasi selesai, konfigurasinya sebagai berikut:

Karena PHP diinstall sebagai module pada Apache, kita perlu mengubah kepemilikan direktori PHP yang hanya akan mengijinkan akses kepada user root dan www saja.

> chown -R root:www /usr/local/lib/php
> chmod -R g-w,o-rwx /usr/local/lib/php

Jalankan apache dengan
> /usr/local/etc/rc.d/apache22 start

f. Edit file /usr/local/etc/apache2/httpd.conf dan ubah baris-baris berikut menjadi:

<IfModule !mpm_netware_module>
User www
Group www
</IfModule>
ServerAdmin hostmaster@namadomain.com
ServerName www.namadomain.com:80
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
<IfModule mime_module>
AddType application/x-httpd-php .php .html .htm
AddType application/x-httpd-php-source .phps
TypesConfig conf/mime.types
AddType application/x-compress .Z
#AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php
AddHandler cgi-script .cgi
</IfModule>

Save file tersebut untuk sementara, kemudian lanjutkan dengan instalasi php extension

NOTES: file-file web nantinya akan disimpan di sini : /usr/local/www/apache22/data
g. Sehingga caranya sebagi berikut
Tahan hingga di sini proses instalasinya

4. Instalasi PHP Extension

cd /usr/ports/lang/php5-extension

Semestinya semuanya jadi beres… Selamat menikmati…

dengan

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s