CLICK HERE FOR BLOGGER TEMPLATES AND MYSPACE LAYOUTS »
JellyMuffin.com - The place for profile layouts, flash generators, glitter graphics, backgrounds and codes

Kamis, 05 November 2009

Tutorial FreeBSD

Catatan selama ngoprek, personal referensi. Boleh juga bermanfaat untuk yang lain.

Tuesday, August 14, 2007
Instal Mailman

Sebelum memulai instalasi mailman, perlu diketahui bahwa untuk dapat menginstal mailman maka kita perlu menginstal Apache terlebih dahulu (* link ke apache) dan dalam contoh ini saya menggunakan Postfix sebagai MTA (* link ke postfix). Anda dapat menginstalnya juga. Kalau apache sudah terinstal maka kita dapat menginstall mailman dengan port. Perlu diperhatikan di sini dalam menginstal mailman kita perlu mengatur parameter MAIL_GID=mailman. Jadi sebaiknya kita instal mailman dengan port saja agar parameter tadi dapat kita pastikan. Pertama untuk mempercepat instalasi, kita instal dahulu python (jika belom ada) dengan pkg_add. Dalam contoh ini saya mengganti lokasi default package di server lokal itb sbb:
# setenv PACKAGESITE ftp://ftp?itb.ac.id/pub/FreeBSD/ports/i386/packages-6.2-release/Latest/
# pkg_add -r python
Kemudian instal mailman dengan port:
# cd /usr/ports/mail/mailman/
# make MAIL_GID=mailman install clean
Ketika muncul pilihan option pastikan kita menggunakan Postfix.

Setelah instalasi selesai, tambahkan baris berikut pada file mm_cfg.py:
# ee /usr/local/mailman/Mailman/mm_cfg.py
Tambahkan di bagian akhir file:
SMTPHOST = 'mail.example.com'
MTA = 'Postfix'

Kemudian edit file httpd.conf dan tambahkan konfigurasi mailman sbb:
# ee /usr/local/etc/apache22/httpd.conf
Tambahkan:
ScriptAlias /mailman "/usr/local/mailman/cgi-bin"
Alias /pipermail "/usr/local/mailman/archives/public"


Options FollowSymLinks ExecCGI
AllowOverride None
Order allow,deny
Allow from all



Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all


Edit juga file master.cf dari Postfix:
# ee /usr/local/etc/postfix/master.cf
Tambahkan:
mailman unix - n n - - pipe
flags=FR user=mailman:mailman
argv=/usr/local/mailman/postfix-to-mailman-2.1.py ${nexthop} ${user}

Dalam konfigurasi pada file master.cf di atas, ada sebuah file yang perlu kita download. Ini sifatnya optional tapi saya merekomendasikannya untuk mempermudah instalasi mailman kita. Download postfix-to-mailman-2.1.py dari situs dibawah ini:
http://www.gurulabs.com/goodies/downloads.php
http://www.gurulabs.com/downloads/postfix-to-mailman-2.1.py
Letakkan file tersebut di /usr/local/mailman/ kemudian kita ubah sedikit:
# ee /usr/local/mailman/postfix-to-mailman-2.1.py
Edit parameter berikut:
MailmanHome = "/usr/local/mailman"; # Mailman home directory.
MailmanOwner = "postmaster@mail.example.com";

Untuk memastikan daftar alias dari Postfix, gunakan perintah-perintah di bawah ini:
# /usr/local/sbin/postalias /etc/mail/aliases
# /usr/local/sbin/postalias /etc/aliases
# /usr/local/sbin/postalias /usr/local/etc/postfix/aliases
Setelah itu kita reload postfix dan restart apache:
# postfix reload
# apachectl restart
Akhirnya kita coba jalankan mailman:
# /usr/local/etc/rc.d/mailman start

Untuk membuat list pertama kali kita lakukan seperti berikut:
# cd /usr/local/mailman/
# bin/newlist mailman:
Enter the email of the person running the list: admin@mail.example.com
Password:
# bin/config_list -i data/sitelist.cfg mailman

Kita perlu juga menambahkan maintenance mailman ke dalam cron:
# cd /usr/local/mailman/cron
# crontab -u mailman crontab.in
# cd /usr/local/mailman
# bin/mailmanctl start

Terakhir kita perlu mengatur password admin untuk mailman sbb:
# bin/mmsitepass
Password:
# bin/mmsitepass -c
Password:

Secara umum instalasi dan konfigurasi mailman telah selesai. Anda bisa melihat hasilnya dengan membuka browser anda dan mulai menggunakan mailman. Buka alamat berikut:
http://mail.example.com/mailman/listinfo
http://mail.example.com/mailman/listinfo/mailman
http://mail.example.com/cgi-bin/mailman/admindb/list -> pending messages waiting for approval

Anda dapat membuat list melalui web atau bisa juga dari command line. Contoh membuat milis baru dari command line sbb:
# bin/newlist testlist
Kalau kita tidak menspesifikasikan mail host dan web host seperti di atas, maka benahi dengan:
# bin/withlist -l -r fix_url testlist --urlhost=example.com
Atau lebih baik langsung seperti ini:
# bin/newlist --urlhost=mail.example.com --emailhost=mail.example.com testlist

Catatan:
Anda bisa membuat milis baru dari browser dari alamat di atas. Ikuti link admin. Mailman memiliki beberapa perintah yang telah disediakan untuk manajemen list, diantaranya yang penting:
newlist: add a new list
rmlist ''list'': delete a list
list_lists: list all the lists
list_members ''list'': list all the members of the list
add_members ''user@example.com'' ''list'': add e-mail [MAILTO] user@example.com to the list list.
remove_members ''user@example.com'' ''list'': remove e-mail [MAILTO] user@example.com to the list list
mmsitepass: define a site password to access administration web interfaces

Usefull Links:
http://www.freebsddiary.org/mailman.php
http://www.list.org/mailman-install/front.html
http://www.gurulabs.com/goodies/downloads.php
http://www.gurulabs.com/downloads/postfix-to-mailman-2.1.py


Diposting oleh izzun at 8:12 PM 0 komentar
Label: email
Instal Cyrus IMAP, Postfix, dan Squirrelmail Pada FreeBSD

Pertama kita akan gunakan BDB-43 agar semua paket terinstall menggunakan database yang sama dan kita atur agar instalasi menggunakan port dengan perintah 'make' secara default akan mengambil source dari server lokal, misalnya di ITB.
Masukkan parameter berikut ke dalam /etc/make.conf:
WITH_DB=43
MASTER_SITE_OVERRIDE=ftp://ftp.itb.ac.id/pub/FreeBSD/distfiles/${DIST_SUBDIR}


1. Instalasi Cyrus-IMAP

Instal cyrus-sasl2 dan cyrus-sasl2-saslauthd melalui port. Akan digunakan MASTER_SITE_OVERRIDE di atas untuk mengambil source dari server FreeBSD local (misalnya dari ITB). Instal dahulu cyrus-sasl2-saslauthd karena secara otomatis akan menginstal cyrus-sasl2 dahulu sebagai dependensi.
# cd /usr/ports/security/cyrus-sasl2-saslauthd/
# make install clean

Instal cyrus-imap23 melalui port. Ketika make config, pilih BDB 43 untuk menyamakan dengan instalasi lainnya.
# cd /usr/ports/mail/cyrus-imap23
# make config
# make install clean

Setelah instalasi berhasil, maka kita diminta untuk mengeksekusi file berikut.
# /usr/local/cyrus/bin/mkimap
Hasilnya seperti berikut:
reading configure file /usr/local/etc/imapd.conf...
i will configure directory /var/imap.
i saw partition /var/spool/imap.
done
configuring /var/imap...
creating /var/spool/imap...
done

Kemudian masukkan dalam rc.conf beberapa informasi untuk mengaktifkan cyrus-imap ketika booting:
# ee /etc/rc.conf
Tambahkan:
sendmail_enable="NO"
cyrus_imapd_enable="YES"
saslauthd_enable="YES"
saslauthd_flags=" -a pam"

Buat file berikut bila belum ada:
# ee /usr/local/lib/sasl2/smtpd.conf
Masukkan baris berikut:
pwcheck_method: saslauthd

Jalankan saslauthd dan buat sebuah user bernama cyrus (yang akan menjadi admin imap):
# /usr/local/etc/rc.d/saslauthd start
# saslpasswd2 -c cyrus
Masukkan password jika diminta dan setelah itu anda bisa melihat user-user yang sudah dibuat dengan perintah:
# sasldblistusers2

Kemudian anda juga perlu mengedit file imapd.conf sbb:
# ee /usr/local/etc/imapd.conf
Ganti atau tambahkan beberapa parameter seperti berikut ini:
allowanonymouslogin: no
sasl_pwcheck_method: saslauthd
sasl_mech_list: 'plain login'
lmtpsocket: /var/imap/socket/lmtp
admins: cyrus

Jalankan imapd dengan perintah berikut:
# /usr/local/etc/rc.d/imapd start

Sebelum dilanjutkan, sepertinya sampai disini kita perlu logout dari shell. Kadang masih belum bisa connect imap (perintah di bawah) Mungkin system perlu di-restart (kalau pakai jail, jailnya perlu di-restart).
Lakukan perintah berikut untuk connect pada cyrus-imap:
# cyradm -u cyrus localhost
localhost.server.domainname> user.test
localhost.server.domainname> lm
user.test (\HasNoChildren)
localhost.server.domainname> quit

Kalau anda tidak berhasil connect pada imap, maka perintah di atas tidak akan berhasil. Cek pesan error pada log dengan:
# tail /var/log/messages
# tail /var/log/maillog
Biasanya anda akan dapat menemukan pesan-pesan kesalahan yang menyebabkan kegagalan sistem anda. Cari pesan kesalahannya lalu perbaiki yang perlu diperbaiki, lalu coba kembali perintah di atas untuk connect ke imapd.
Pastikan juga anda memiliki baris-baris berikut pada /etc/services:
pop3 110/tcp
imap 143/tcp
imsp 406/tcp
acap 674/tcp
imaps 993/tcp
pop3s 995/tcp
kpop 1109/tcp
sieve 2000/tcp
lmtp 2003/tcp
fud 4201/udp

Jika anda menggunakan SSL, maka pastikan berikut ini ada pada /usr/local/etc/imapd.conf:
tls_key_file: /var/imap/key.pem
tls_ca_file: /var/imap/cacert.pem
tls_cert_file: /var/imap/cert.pem
admins: cyrus

Untuk mendapatkan file-file di atas (key.pem, cacert.pem, cert.pem) maka kita bisa membuatnya sendiri (*link ke ca-cert) dengan OpenSSL atau membeli sertifikasi resmi yang disediakan di internet oleh lembaga-lembaga sertifikasi.


2. Instalasi Postfix

Instal Postfix dengan menggunakan pkg_add:
# setenv PACKAGESITE ftp://ftp.itb.ac.id/pub/FreeBSD/ports/i386/packages-6.2-release/Latest/
# pkg_add -r postfix-current
Pada waktu config pilih menggunakan BDB 43 dan SASL. Kemudian jawab yes untuk semua pertanyaan pada saat instalasi, misalnya seperti ini:
Would you like to activate Postfix in /etc/mail/mailer.conf [n]? y

Tambahkan informasi berikut ini pada /etc/rc.conf agar postfix diaktifkan saat booting dan menonaktifkan Sendmail:
postfix_enable="YES"
sendmail_enable="NO"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"

Tambahkan juga informasi berikut pada /etc/periodic.conf agar secara rutin (daily) dilakukan maintenance pada postfix:
daily_clean_hoststat_enable="NO"
daily_status_mail_rejects_enable="NO"
daily_status_include_submit_mailq="NO"
daily_submit_queuerun="NO"

Aktifkan maildrop, old-cyrus, cyrus, uucp, ifmail, bsmtp dengan mengedit file /usr/local/etc/postfix/master.cf:
maildrop unix - n n - - pipe
flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
#
# The Cyrus deliver program has changed incompatibly, multiple times.
#
old-cyrus unix - n n - - pipe
flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user}
# Cyrus 2.1.5 (Amos Gouaux)
# Also specify in main.cf: cyrus_destination_recipient_limit=1
cyrus unix - n n - - pipe
user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}
#
# See the Postfix UUCP_README file for configuration details.
#
uucp unix - n n - - pipe
flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
#
# Other external delivery methods.
#
ifmail unix - n n - - pipe
flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp unix - n n - - pipe
flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient

Kemudian kita perlu mengedit file konfigurasi utama postfix yaitu pada /usr/local/etc/postfix/main.cf:
queue_directory = /var/spool/postfix
command_directory = /usr/local/sbin
daemon_directory = /usr/local/libexec/postfix
mail_owner = postfix
mailbox_size_limit = 512000000
myhostname = mail.example.com
mydomain = example.com
myorigin= $mydomain
mydestination = example.com, $myhostname
mailbox_transport = lmtp:unix:/var/imap/socket/lmtp

Lakukan perintah berikut ini untuk membuat mengaktifkan alias pada postfix:
# newaliases
Kemudian setelah semua setting dilakukan, maka postfix perlu di-reload:
# postfix reload
Atau jika postfik belom dijalankan, gunakan perintah:
#postfix start

Untuk mengetes apakah postfix sudah berjalan, maka anda dapat mencoba:
# telnet localhost 25
atau:
# telnet mail.example.com 25
Jika semua berjalan dengan baik, maka anda akan mendapatkan jawaban seperti ini:
220 mail.example.com ESMTP Postfix

Jika anda menemukan masalah dalam mengirim atau menerima email, maka coba lakukan debugging dengan melihat file log:
# tail /var/log/messages
# tail /var/log/maillog


3. Instalasi Squirrelmail

Baca manual: http://squirrelmail.org/docs/admin/admin-1.html
Requirement:
* Sebuah web server dengan PHP terinstal. PHP paling tidak versi 4.1.0.
* Akses pada sebuah server IMAP yang telah dapat menggunakan standard IMAP 4 rev 1.

Disini digunakan:
- Apache22 + PHP 5 (petunjuk instalasi ada di atas)
- php5-gd + php5-session + php5-mbstring + php5-gettext + php5-xml
- ispell

Semua requirement tsb akan diinstall otomatis ketika kita menginstall Squirrelmail dengan port atau dengan package. Cek phpinfo() pada web server dan pkg_info untuk memastikan.
Lakukan konfigurasi cyrus-imapd dengan benar.

Cek variabel berikut pada php.ini
# /usr/local/etc/php.ini
file_uploads = On
session.auto_start = 1

Instal Squirrelmail dengan menggunakan pkg_add:
# setenv PACKAGESITE ftp://ftp.itb.ac.id/pub/FreeBSD/ports/i386/packages-6.2-release/Latest/
# pkg_add -r squirrelmail

Jalankan perintah conf.pl yang telah disediakan untuk melakukan konfigurasi squirrelmail:
# cd /usr/local/www/squirrelmail/config
# ./conf.pl
Pada konfigurasi ini kita dapat melakukan berbagai setting yang diperlukan untuk squirrelmail. Di sini juga telah disediakan setting default untuk beberapa jenis server IMAP. Pilih konfigurasi untuk Cyrus-IMAP. Setting juga nama server squirrelmail dll. Anda bisa mencoba-coba berbagai setting yang ada tanpa perlu khawatir. Jika terjadi error, maka anda tinggal jalankan lagi program setting ini (conf.pl) untuk mengembalikan setting yang telah anda ubah dengan mudah.

Pastikan bahwa direktori squirrelmail dimiliki oleh www:
# chown -R www:www /usr/local/www/squirrelmail/
# chown -R www:www /usr/local/www/squirrelmail/*


Kira-kira demikianlah instalasi Cyrus IMAP, Postfix, dan Squirrelmail pada sistem saya menggunakan FreeBSD 6.2. Kalau ada pertanyaan atau perbaikan pada tulisan saya ini, silakan memberikan komentar atau mengirim email kepada saya ke izbiq[at]rufaqait[dot]com. Semoga bermanfaat.


Usefull links:
http://www.soe.ucsc.edu/~venkat/tutorial1.html
http://tomster.org/geek/freebsdcookbook/ar01s03.html
http://www.hott.net.au/site%20sources/postfix-howto.html
http://www.postfix.org/basic.html
http://www.pcprobleemloos.nl/freebsd/
http://bsdinn.com/postfix/index.php?page=SB01
http://squirrelmail.org/docs/admin/admin.html
Diposting oleh izzun at 7:59 PM 1 komentar
Label: email
Instal Apache (Apache22) dan PHP 5 Pada FreeBSD

1. Instalasi Apache

Instalasi Apache saya lakukan melalui pkg_add. Pada tutorial ini saya memberikan contoh bila kita memilih server mirror/lokal untuk mendapatkan package daripada langsung mengambilnya dari situs utama FreeBSD. Dalam contoh berikut saya menggunakan server lokal di ITB misalnya.
Gunakan perintah ini (kita login sebagai root)untuk mensetting lokasi default dari package:
# setenv PACKAGESITE ftp://ftp.itb.ac.id/pub/FreeBSD/ports/i386/packages-6.2-release/Latest/
atau:
# setenv PACKAGESITE ftp://ftp.itb.ac.id/pub/FreeBSD/ports/i386/packages-6-stable/Latest/

Perbedaan kedua perintah di atas adalah pada jenis package, yaitu package yang ada pada release FreeBSD 6.2 atau kita akan menggunakan package golongan stable untuk distribusi umum FreeBSD 6. Beberapa jenis package ada yang masuk pada kedua tempat tersebut, tapi sebagian ada yang hanya pada satu tempat diantara keduanya. Jadi kalau misalnya kita telah mengeset lokasi package misalnya dengan perintah pertama, maka kita bisa menggantinya dengan melakukan setenv ulang tentunya dengan parameter lokasi package yang berbeda, seperti pada perintah kedua. Kalau menggunakan shell seperti bash, maka syntax perintah di atas perlu diubah sbb:
# export PACKAGESITE=ftp://ftp.itb.ac.id/pub/FreeBSD/ports/i386/packages-6.2-release/Latest/
atau
# export PACKAGESITE=ftp://ftp.itb.ac.id/pub/FreeBSD/ports/i386/packages-6-stable/Latest/

Selanjutnya install package:
# pkg_add -r apache22

Gunakan semua option secara default kalau anda tidak mengetahui fungsi option-option yang disertakan. Cara instalasi dengan pkg_add ini dipilih karena instalasi jadi lebih cepat (apache22 sudah dicompile, tanpa perlu compile sendiri). Pada beberapa package kita perlu melakukan kompilasi sendiri dari source jika ada parameter2 konfigurasi yang perlu disertakan pada waktu kompilasi. Tapi jika anda ingin melakukan kompilasi, mungkin untuk mencegah kemungkinan masalah kompatibilitas, maka anda dapat menginstall package tersebut dari ports collection:
# cd /usr/ports/www/apache22/
# make config
# make install clean

Setelah instalasi berhasil, apache perlu diaktifkan secara default ketika booting. Edit file /etc/rc.conf:
# ee /etc/rc.conf

Masukkan baris berikut:
apache22_enable="YES"

Edit file httpd.conf:
# ee /usr/local/etc/apache22/httpd.conf

Ubah variabel-variabel seperti berikut:
Listen 10.1.1.30:80
ServerName example.com:80
ServerAdmin admin@example.com

Variable di atas perlu diganti sesuai dengan sistem yang akan dipakai. Dalam hal ini, nama host adalah example.com dengan alamat IP 10.1.1.30, port yang digunakan adalah port 80 dan email admin adalah admin@example.com.

Kemudian ganti semua parameter /usr/local/www/apache22 dengan /usr/local/www/ karena pada apache22 default instalasi diubah dari versi2 sebelumnya. Hal ini sifatnya optional. Jika anda mengubahnya, maka anda perlu memindahkan semua isi direktori /usr/local/www/apache22 yang sebenarnya ke direktori /usr/local/www/. Jadi, keluar dari editor, lalu lakukan perintah berikut:
# mv /usr/local/www/apache22/* /usr/local/www

Setting secara umum selesai, anda dapat menguji syntax httpd.conf anda:
# apachectl configtest

Beberapa perintah apache yang perlu anda coba:
# apachectl start
# apachectl restart
# apachectl graceful
# apachectl stop

Kadang-kadang apache tidak bisa dijalankan. Perlu anda cek dengan perintah2 berikut:
# tail /var/log/messages
# tail /var/log/httpd-error.log

Beberapa error yang sering terjadi, diantaranya keluar pesan seperti berikut:
[warn] (2)No such file or directory: Failed to enable the 'httpready' Accept Filter

Ini berarti anda perlu melakukan load kernel module yang bernama accf_http. Caranya:
# kldload accf_http

Agar setiap kali booting, kernel module ini di-load secara otomatis, maka anda perlu membuat file /boot/loader.conf:
# ee /boot/loader.conf

Masukkan baris berikut:
accf_http_load="YES"

Error yang lain yang sering terjadi adalah:
"cannot determine local host name"

Penyebabnya adalah resolv dari hostname tidak sama dengan alamat IP yang dipunyai. Coba cek dengan perintah berikut:
# hostname
example.com
# nslookup example.com
Non-authoritative answer:
Name: example.com
Address: 10.1.1.30
# ifconfig
inet 192.168.0.5 netmask 0xffffff00

Kalau hasil dari pengecekan terdapat perbedaan alamat IP dengan hostname yang bersangkutan, anda dapat mengubah setting hostname dengan perintah:
# ee /etc/hosts
masukkan sebuah baris:
10.1.1.30 example.com


2. Instalasi PHP 5

Pilih port instalasi PHP 5 pada port collection yaitu /usr/ports/lang/php5/. PHP 5 hanya disediakan pada satu port saja sejak rilis PHP versi 5.1.14. Versi sebelumnya terdiri dari beberapa port seperti www/mod-php5, lang/php5-cli, dan lang/php5. Pada versi baru port lang/php5/ ini instalasi PHP 5 dijadikan satu dan PHP sebagai modul CLI, CGI atau apache adalah sebagai option pada saat instalasi.

Pilihan default tidak menyertakan apache module, jadi pastikan kita beri tanda check pada option tersebut kalau hendak menggunakan php sebagai modul apache.

Kali ini instalasi saya lakukan pada melalui port karena instalasi standard dengan pkg_add tidak menyertakan pilihan modul apache (setahu saya demikian,maaf kalau salah). Instal PHP 5 melalui port:
# cd /usr/ports/lang/php5
# make config
# make install

Ketika make config dijalankan, maka pastikan Apache Module box diberi tanda silang (checked).

Setelah semua selesai, maka dapat juga kita menginstall beberapa modul ekstra seperti MySQL. Beberapa modul yang paling sering dipakai diantaranya:
/usr/ports/databases/php5-mysql - MySQL Database
/usr/ports/www/php5-session - Sessions
/usr/ports/graphics/php5-gd - Graphics Library

Untuk modul-modul ekstra di atas, silakan instal dengan pkg_add atau port collection. Caranya mirip dengan sebelumnya.

Apache memerlukan pernyataan pada httpd.conf agar dapat menggunakan PHP yang telah diinstal. Biasanya hal ini sudah dilakukan secara otomastis saat instalasi dengan port, namun bisa kita cek untuk memastikan. Buka httpd.conf:
# ee /usr/local/etc/apache22/httpd.conf

Untuk Apache versi 1.3.x perlu ditambahkan baris berikut pada httpd.conf:
LoadModule php5_module libexec/apache/libphp5.so
AddModule mod_php5.c

Untuk Apache versi 2.x hanya perlu satu baris berikut, tidak perlu perintah AddModule seperti di atas:
LoadModule php5_module libexec/apache/libphp5.so

Lokasi dan nama file dari module PHP 5 dapat berlainan dari versi ke versi, jadi silakan cek di direktori pada sistem anda untuk lokasi yang tepat dan nama yang tepat. Biasanya kalau instalasi dilakukan dengan port, perintah LoadModule ini sudah ditambahkan secara otomatis dengan parameter lokasi dan nama modul yang tepat. Silakan dicek ulang.

Kemudian masih pada httpd.conf, edit juga parameter-parameter berikut:
DirectoryIndex index.php index.html index.htm

Tambahkan juga dua baris berikut:
AddType application/x-httpd-php .php .htm .html
AddType application/x-httpd-php-source .phps

Setting PHP sendiri diletakkan pada /usr/local/etc/php.ini sehingga anda perlu membuat file tersebut. Ini dapat anda lakukan dengan meng-copy setting standard yang disediakan, sbb:
# cp /usr/local/etc/php.ini-dist /usr/local/etc/php.ini

Setelah semua itu dilakukan, maka Apache perlu di-restart. Lalu buat sebuah file test.php seperti di bawah ini untuk mengecek apakah PHP sudah diload oleh Apache:
# echo "" >> /usr/local/www/data/test.php

Lalu buka browser (Anda bisa menggunakan browser apa saja, misal IE, Mozilla, Firefox, Lynx, links dll) dan buka alamat server Apache anda, misalnya http://server.mydomain.com/test.php. Kalau instalasi sukses maka anda akan mendapatkan halaman phpinfo() dari instalasi PHP 5 anda. Berbagai informasi tentang Apache dan PHP beserta info-info lainnya dapat dilihat disini.

Kira-kira demikianlah instalasi Apache dan PHP 5 pada sistem saya menggunakan FreeBSD 6.2. Kalau ada pertanyaan atau perbaikan pada tulisan saya ini, silakan memberikan komentar atau mengirim email kepada saya ke izbiq[at]rufaqait[dot]com. Semoga bermanfaat.

Usefull links:
http://www.freebsdmadeeasy.com/tutorials/web-server/install-php-5-for-web-hosting.php