Sistem Table Pada Postgresql
April 3, 2009 — Imam Feriantotetapi jika kita melihat daftar table misalnya dengan perintah pada isql# \t
table table sistem berikut tidak akan ditampilkan:
Table 3-1. Postgres System Catalogs
| Catalog Name | Description |
|---|---|
| pg_database | databases |
| pg_class | classes |
| pg_attribute | class attributes |
| pg_index | secondary indices |
| pg_proc | procedures (both C and SQL) |
| pg_type | types (both base and complex) |
| pg_operator | operators |
| pg_aggregate | aggregates and aggregate functions |
| pg_am | access methods |
| pg_amop | access method operators |
| pg_amproc | access method support functions |
| pg_opclass | access method operator classes |
Beberapa Tips & Cheatseat SQL Postgres
April 3, 2009 — Imam Feriantoselect datname from pg_database;
#melihat constraint foreign key dan kolomnya:
SELECT
FK.TABLE_NAME as tableChild,
CU.COLUMN_NAME,
PK.TABLE_NAME as tableParent,
PT.COLUMN_NAME,
C.CONSTRAINT_NAME
FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS C
INNER JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS FK ON C.CONSTRAINT_NAME = FK.CONSTRAINT_NAME
INNER JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS PK ON C.UNIQUE_CONSTRAINT_NAME = PK.CONSTRAINT_NAME
INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE CU ON C.CONSTRAINT_NAME = CU.CONSTRAINT_NAME
INNER JOIN (
SELECT i1.TABLE_NAME, i2.COLUMN_NAME
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS i1
INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE i2 ON i1.CONSTRAINT_NAME = i2.CONSTRAINT_NAME
WHERE i1.CONSTRAINT_TYPE = ‘PRIMARY KEY’
) PT ON PT.TABLE_NAME = PK.TABLE_NAME
#melihat daftar table (pada mysql adalah “show tables”), sedangkan pada postgresql 8.0:
SELECT schemaname AS nspname, tablename AS relname, tableowner AS relowner
FROM pg_catalog.pg_tables
WHERE schemaname NOT IN (’pg_catalog’, ‘information_schema’, ‘pg_toast’)
ORDER BY schemaname, tablename
Membuat Mug Printing
Nopember 7, 2008 — Imam Feriantomembuat virtual entry virtual dos floppy pada grub
Oktober 22, 2008 — Imam FeriantoTulisan ini adalgah tips bagaimana caranya membuat sebuat Virtual Floppy yang bisa dipakai untuk instalasi dos/windows dari linux. Hal ini berguna misalnya kita sudah menginstall linux tetapi pengen install windows, sedangkan di PC tidak ada cdrom maupun floppy sedangkan boot windows dari USB pendrive installer juga gagal (gara2 hardisknya sata) . Ini adalah contoh penyelesaian salah satu problem di client. Caranya adalah sbb:
1. buat folder dos
user# sudo -i
root# mkdir /boot/dos
2. install syslinux pada linuxnya
root# sudo apt-get install syslinux
cari file memdisk
root# find / |grep memdisk
(misalnya memdisk ditemukan pada /usr/share/syslinux/memdisk , maka)
root# cp /usr/share/syslinux/memdisk /boot/dos
3. download freedos bootfloppy image atau dos image biasa:
root# wget http://www.fdos.org/bootdisks/autogen/FDOEM.144.gz
( kemudian EXTRACT image tersebut )
root# cd /home/imam ; gunzip FDOEM.144.gz
4.copy image dos ke folder dos boot
root# cp /home/imam/FDOEM.144 /boot/dos
3. bila pertlu mounting floppy untuk ditambah program atau data lain
root# mkdir /media/vfloppy
root #mount -t msdos -o loop /boot/dos/FDOEM.144 /media/vfloppy
root# cd /media/vfloppy ; cp /home/imam/serial.txt .
4. edit entry pada GRUB dan tambahkan freedos di dalamnya :
title FreeDOS
root (hd0,0) #perhatikan entry ini sesuaikan dgn root linuxnya
kernel /boot/dos/memdisk
initrd /boot/dos/FDOEM.144
boot
5. reinstal grubnya jalankan
root# grub-install /dev/sda
6. kalau perlu buat 1 partisi windows dan buat filesystemnya serta download windows image dan extract ke partisi windows
#fdisk /dev/sda
#mkfs -t vfat /dev/sda3
#mkdir /mnt/c ; mount /dev/sda3 /mnt/c
mount window iso image ke virtual loop folder
#mkdir /mnt/loop1
#mount -t iso9660 /home/imam/xpcd.iso /mnt/loop -o loop
copy file windows ke /mnt/c
# cp -rf /mnt/loop/i386 /mnt/c/.
7. reboot komputer seperti biasa, pilih booting ke freedos
komputer sudah boot pada dos pada floppy virtual A dan silahkan ganti ke partisi fat32
A:\> C:
C:\> cd winxp\i386
sekarang bisa mejalankan instalasi XP seperti biasa
C:\winxp\i386\winnt.exe
Sumber:
sebuah tulisan berjudul boot dos without floppy pada websitenya opensuse (URL aslinya lupa!)
Tips Membuat Wordpress Multilanguage
September 7, 2008 — Imam FeriantoTips Membuat Wordpress Multilanguage
Note: Tips ini untuk sesama developer atau paling tidak sudah memahami php pada tingkat menengah
Untuk membuat wordpress multilanguage salah satu caranya adalah mengedit database table structure atau menambahkan table baru yang berisi versi dengan bahasa lainnya. Pada step kali ini saya menggunakan teknik hack daripada membuat modul karena juga belum sempat mempelajari pembuatan WP modul lebih jauh. Untuk versi 2 bahasa Inggris dan Indonesia saya menggunakan teknik yang sederhana yaitu menambahkan kolom untuk versi indonesia dari wordpress yang sudah ada kemudian menduplicate isi dari bahasa inggris ke bahasa Indonesia. Perintah SQL yang digunakan adalah:
<sql>
ALTER TABLE wp_posts add column post_title_id text;
ALTER TABLE wp_posts add column post_excerpt_id text;
ALTER TABLE wp_posts add column post_content_id text;
update wp_posts set post_title_id=post_title,post_excerpt_id=post_excerpt,post_content_id=post_content;
</sql>
Setelah database di update maka kita dapat mengedit bagian wp-admin dan menambahkan 1 input text untuk judul versi Indonesia dan 1 textarea untuk versi inggris pada file : wp-admin/edit-form-advanced.php
<!–s.hack–>
<br/>
<b>Versi Indonesia :</b><br>
<div id=”titlediv”>
<h3>Judul</h3>
<div id=”titlewrap”>
<input type=”text” name=”post_title_id” size=”30″ tabindex=”1″ value=”<?php echo attribute_escape($post->post_title_id); ?>” id=”title_id” autocomplete=”off” />
</div>
</div>
<div id=”<?php echo user_can_richedit() ? ‘postdivrich’ : ‘postdiv’; ?>” class=”postarea”>
<h3><?php _e(’Post’) ?></h3>
<div id=”><textarea class=” rows=’30′ cols=’40′ name=’content_id’ tabindex=’2′ id=’content_id’><?=$post->post_content_id?></textarea></div>
<script language=”javascript” type=”text/javascript”>
tinyMCE.init({
theme : “advanced”,
mode : “exact”,
elements : “content_id”,
plugins : “table,save,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,zoom,flash,searchreplace,print,contextmenu,paste,directionality,fullscreen”,
theme_advanced_buttons1_add_before : “forecolor,backcolor”,
theme_advanced_buttons1_add : “fontselect,fontsizeselect”,
theme_advanced_buttons2_add : “separator,insertdate”,
theme_advanced_buttons2_add_before: “cut,copy,paste,pastetext,pasteword,separator,search,replace,separator”,
theme_advanced_buttons3_add_before : “tablecontrols,inserttime,preview”,
theme_advanced_buttons3_add : “emotions,iespell,advhr,separator,print,ltr,rtl,separator,fullscreen”,
theme_advanced_toolbar_location : “top”,
theme_advanced_toolbar_align : “left”,
theme_advanced_path_location : “bottom”,
content_css : “styles2.css”,
plugin_insertdate_dateFormat : “%Y-%m-%d”,
plugin_insertdate_timeFormat : “%H:%M:%S”,
extended_valid_elements : “*[*]”
});
</script>
</div>
<!–e.hack–>
Kemudian pada beberapa file2 yang berkaitan dengan wp-admin perintah “update $wpdb->post ” harus ditambahkan lagi untuk 3 kolom baru yaitu:
…. SET post_title_id=’ “.$_POST['title_id'].”‘,post_excerpt_id=’”.$_POST['excerpt_id'].”‘, post_content_id=’”.$_POST['post_content_id'].”‘ …..
Kemudian saya menambahkan 1 file pada root wordpress dengan nama : lang.php , dengan isi sbb:
<?php
@setCookie(”lang”,$_GET['lang'],time()+36000);
$ref=$_SERVER['HTTP_REFERER'];
if(!empty($ref)) @header(”location:”.$ref);
else @header(”location:index.php”);
?>
Lalu pada file header.php pada folder template harus ditambahkan link yang switch ke lang.php,
url versi Inggris : lang.php?lang=en
url versi Indonesia : lang.php?lang=id
Kemudian buat folder en dan folder id , pada folder template, misalnya :
untuk data versi Inggris: wp-content/themes/default/en
dan untuk data versi Indonesia: wp-content/themes/default/id
setelah itu semua file php dan folder image yang ada pada folder default/ , dipindahkan ke subfolder : default/en/
dan copy isi dari folder default/en ke folder default/id .
nah langkah selanjutnya kita buat file : index.php pada folder default/index.php
isi file tersebut adalah untuk switch content dari bahasa yang dipilih berdasarkan cookies.
<?php
$lang=$_COOKIE['lang'];
if($lang==”en”){
include(”en/index.php”);
}else{
include(”id/index.php”);
}
?>
langkah selanjutnya adalah menyesuikan css dan link image pada file2 php di kedua versi bahasa tersebut dan
menyesuikan query file2 function dari wordpress untuk switch query-nya:
$lang=$_COOKIE['lang'];
if($lang==”en”){
$sql=”select ….post_title,post_content…….. from $wpdb->post “;
} else{
$sql=”select ….post_title_id as post_title,post_content_id as post_content…….. from $wpdb->post “;
}
Demikian tips singkat untuk membuat wordpress 2 bahasa.
Imam
Membuat Situs Youtube Clone
September 7, 2008 — Imam FeriantoMembuat Situs Youtube Clone
Ditulis dan dikerjakan Oleh: Imam Ferianto
Env: Linux Ubuntu 7.10 pada Vmware 5 , windows xp
Download Versi PDF : cara-install-phpmotion.pdf
Pengantar
Assalamualaikum wrbb.
YOUTUBE merupakan situs videoblogging / videosharing/videonews yang belakangan sangat terkenal. Di Indonesia sendiri sekarang sudah mulai berkembang content video news seperti dari kompas.tv, layartancap.com , detikvideo , SCTV news dan lainnya.
PHPMOTION adalah opensource videosharing yang mempunyai fitur hampir sama dengan yang dimiliku youtube.com sehingga dapat disebut juga sebagai YOUTUBE CLONE. Dan keunggulan lain CMS video blog ini tersedia sourcenya dan free dengan lisensi GPL. Untuk keperluan pembelajaran,maka bila kita ingin mempunyai situs serupa youtube, PHPMOTION adalah pilihan tepat.
PHPMOTION sendiri menggunakan PHP dan PERL sebagai scripting engine untuk fondasi systemnya dan backedn mysql server untuk data storage (bisa juga dengan server database lainnya) serta menggunakan beberapa tool untuk videoconvert dan videocapture seperti lame, ogg vorbis codec, mencoder, flvtool dan ffmpeg.
Pada sesi kali ini kita akan mereview dan belajar melakukan instalasi PHPMOTION pada server Linux Ubuntu Server 7.10. Dipilihnya ubuntu karena relativ lebih mudah untuk pemula sebab instalasi dasar menggunakan dasar otomatis apt-get yang akan menginstall dan mendownload dependencies secara otomatis. Ataupun bisa menggunakan distro linux yang lain misalnya redhat/Fedora dan mandriva dengan Yum ataupun Urpmi. Sebenernya PHPMOTION juga bisa diinstall di windows dan berjalan normal di platform tersebut. Tetapi baiklah pada bahasan ini kita fokus pada ubuntu linux yang opensource ! .
Tips & Note:
Mungkin pada saat anda mencoba tutorial ini ada yang kurang pas, bisa disesuaikan dan di tune lagi sesuai dengan konfigurasi system dan OS yang anda miliki. Dan bila ada salah istilah dan kata yang dipakai penulis adalah keterbatasan pengetahuan penulis yang belajar Otodidak sendiri.
Langkah instalasi
Dengan tanpa banyak basa basi marilah kita segera melakukan instalasinya, agar lebih semangat mungkin bisa sambil mendengarkan lagu mp3. Berikut adalah langkah-langkah untuk melakukan instalasi phpmotion pada ubuntu server
1. Langkah persiapan
Anda harus terlebih dahulu menginstall ubuntu linux pada komputer atau server anda dan harus terhubung ke internet dan memiliki IP Addres publik sendiri bila ingin bisa diakses dari luar (untuk pointing domain ataupun lewat NAT dan dinamic DNS). Atau bila anda menggunakan servis webhosting anda harus memilih paket privat webhosting dedicated atau VPS atau servis colocation (silahkan hubungi penulis utk hal ini) dengan servis ssh dan console sehingga kita bisa menginstall apapun di server tersebut dan melakukan pointing domain ke server kita. Tetapi untuk bahan eksperiment kita bisa menggunakan komputer lokal yang diakses secara LAN dan bahkan melalui virtual machine pun bisa. (Penulis sendiri menginstall php motion pada Ubuntu Linux 8.04 yang berjalan diatas VMWare 5 pada OS windows XP yang kemudian nantinya OS Image nya dapat didevelop dan dicopy ke mesin sebenarnya dengan mudah)
2. Download phpmotion
download pada website http://www.phpmotion.com http://www.phpmotion.com
(anda harus register dulu pada forum agar bisa melakukan download) , pilih yang versi untuk php5, kemudian download an taruh file di folder misalnya:
/home/imam/PHPMOTION_PHP5.zip
3. update apt source
update dulu apt-sourcenya untuk mendapatkan data software terbaru, pada console XTERM
sudo -iapt-get update apt-get upgrade
4. install apache2 dan mysql5 dan php5 dan perl cgi
apt-get install apache2 php5 libapache2-mod-php5 mysql-server-5.0 php5-mysql lynx-cur libapache2-mod-speedycgi
Periksa konfigurasi php.ini
pico /etc/php5/apache2/php.ini
sesuikan isi php.ini dengan konfigurasi yand dibutuhkan di bawah ini:
open_basedir = (kosongkan)
upload_max_filesize = 100M
post_max_size = 100M
max_execution_time = 1500
session.gc_maxlifetime = 14000
safe_mode = off
enable_dl = On
short_open_tag = on
extension_dir = “./”
# Start apache dan mysql server
/etc/init.d/apache2 start
/etc/init.d/mysql start
#test koneksi ke mysql dan lihat database yang sudah ada
mysql -u root -e “show databases”
seharusnya ada output nama database seperti “mysql dan test”
#test php dan apache
cd /var/www/
echo “<?php phpinfo();?>” > info.php ; chmod 755 info.php
#test dan browsing ke localhost dengan lynk atau browser , apakah apache dan php sudah jalan.
lynx http://localhost/info.php
atau browse : http://l192.168.116.3/info.php
seharusnya sudah ada output dari browser lynx yang menerangkan tentang php dan modul yang terinstall, periksa hasilnya
5. install sofware dan tool pendukung lain
apt-get install libjpeg-progs libjpeg62 libjpeg62-dev libsdl1.2-dev php5-dev build-essential unzip libalogg-dev#download tool tambahancd /usr/local/src wget http://www3.mplayerhq.hu/MPlayer/releases/codecs/essential-20071007.tar.bz2 wget http://rubyforge.org/frs/download.php/17497/flvtool2-1.0.6.tgz wget http://easynews.dl.sourceforge.net/sourceforge/lame/lame-3.97.tar.gz wget http://superb-west.dl.sourceforge.net/sourceforge/ffmpeg-php/ffmpeg-php-0.5.0.tbz2 wget http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.2.0.tar.gz wget http://ftp.penguin.cz/pub/users/utx/amr/amrnb-7.0.0.2.tar.bz2 wget http://ftp.penguin.cz/pub/users/utx/amr/amrwb-7.0.0.3.tar.bz2 wget http://downloads.xiph.org/releases/theora/libtheora-1.0beta3.tar.gz #extract source tool tersebut tar zxvf lame-3.97.tar.gz tar zxvf libogg-1.1.3.tar.gz tar zxvf libvorbis-1.2.0.tar.gz tar zxvf flvtool2-1.0.6.tgz tar jxvf essential-20071007.tar.bz2 tar jxvf ffmpeg-php-0.5.0.tbz2 bzip2 -cd amrnb-7.0.0.2.tar.bz2 | tar xvf - bzip2 -cd amrwb-7.0.0.3.tar.bz2 | tar xvf - tar zxvf libtheora-1.0beta3.tar.gz #buat folder untuk instalasi codec mkdir /usr/local/lib/codecs/ #install subversion client apt-get install subversion ruby libcurses-ruby #download ffmpeg dan mplayer tool source svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer cd /usr/local/src/mplayer svn update #pindahkan codec yang sudah di download ke folder code mv /usr/local/src/essential-20071007/* /usr/local/lib/codecs/ #chmod agar codec bisa di jalankan chmod -R 755 /usr/local/lib/codecs/ #buat folder temp untuk codec mkdir /usr/local/src/tmp chmod 777 /usr/local/src/tmp export TMPDIR=/usr/local/src/tmp
Install lame
#installasi lame tool untuk konversi suara mp3 dan bitrate cd /usr/local/src/lame-3.97 ./configure make && make install
Install libogg
cd /usr/local/src/libogg-1.1.3 ./configure && make && make install
cd /usr/local/src/libvorbis-1.2.0 ./configure && make && make install
cd /usr/local/src/flvtool2-1.0.6/ ruby setup.rb config ruby setup.rb setup ruby setup.rb install
cd /usr/local/src/mplayer ./configure --enable-jpeg make && make install
Install AMR (for 3gp conversion)
cd /usr/local/src/amrnb-7.0.0.2 ./configure make && make install cd /usr/local/src/amrwb-7.0.0.3 ./configure make && make install
Install libtheora (for ogg video encoding)
cd /usr/local/src/libtheora-1.0beta3 ./configure make && make install
./configure --enable-libmp3lame --enable-libvorbis \ --disable-mmx --enable-shared --enable-libamr-nb \ --enable-libtheora –enable-nonfree make make install ln -s /usr/local/lib/libavdevice.so.52 /usr/lib/libavdevice.so.52 ln -s /usr/local/lib/libavformat.so.52 /usr/lib/libavformat.so.52 ln -s /usr/local/lib/libavcodec.so.51 /usr/lib/libavcodec.so.51 ln -s /usr/local/lib/libavutil.so.49 /usr/lib/libavutil.so.49 ln -s /usr/local/lib/libmp3lame.so.0 /usr/lib/libmp3lame.so.0 ln -s /usr/local/lib/libavformat.so.51 /usr/lib/libavformat.so.51 ln -s /usr/local/lib/libamrnb.so.2 /usr/lib/libamrnb.so.2 6. Instalasi PHPMOTION
Instalasi berikut adalah bila phpmotion akan diinstall pada subfolder
(contohnya http://www.yourdomain.com/motion/ )
#unzip phpmotion
cd /var/www
mkdir motion ; cd motion
unzip /home/imam/PHPMOTION_PHP5.zip
rm -rf PHPMOTION_PHP5
mv PHPMOTION_PHP5/PHPMOTION/ .
rm -rf mv PHPMOTION_PHP5
chmod -R 777 setup pictures classes temp logs addons uploads
chmod -R 755 cgi-bin
File berikut harus diedit:
pico /var/www/motion/cgi-bin/uu_default_config.pm
Pada Bagian :
config_file_name => 'uu_default_config',temp_dir => $ENV{'DOCUMENT_ROOT'} . '/temp/',
upload_dir => $ENV{'DOCUMENT_ROOT'} . '/uploads/avi/',
redirect_url => '/uploader_finished.php',
path_to_upload => '/uploads/avi/',
Ubah menjadi :
config_file_name => 'uu_default_config',temp_dir => $ENV{'DOCUMENT_ROOT'} . '/motion/temp/',
upload_dir => $ENV{'DOCUMENT_ROOT'} . '/motion/uploads/avi/',
redirect_url => '/motion/uploader_finished.php',
path_to_upload => '/motion/uploads/avi/',
#simpan hasil editan ( crtrl X )
pico /var/www/motion/uploader_conlib.php
Pada bagian:
$path_to_upload_script = '/cgi-bin/uu_upload.pl'; $path_to_ini_status_script = '/cgi-bin/uu_ini_status.pl';
Ubah menjadi:
$path_to_upload_script = '/motion/cgi-bin/uu_upload.pl'; $path_to_ini_status_script = '/motion/cgi-bin/uu_ini_status.pl';
#setup database untuk phpmotion
pada console xterm ketikkan
mysql -u root -prahasia -e “create database motion;grant all privileges on motion.* to motionuser@localhost identified by ‘motionpass’ “
buka browser anda dan browsing ke alamat local atau komputer anda:
misal: http://127.0.0.1/motion/setup/
atau: http://192.168.116.3/motion/setup/
Click tombol next >> 2 kali sampai muncul input konfigurasi database
Mysql Host = localhost
Database Name = motion
Database Username = motionuser
Database Password = rahasia
Click next >> lagi , kemudian pada server setting, isikan (misalnya)
sebagai berikut
Site name = Imam Video Tutorial
Site base url = http://192.168.116.3/motion
Date format = d-m-y
Path to ffmpeg = /usr/local/bin/ffmpeg
Path to flvtool2 = /usr/bin/flvtool2
Path to mencoder = /usr/local/bin/mencoder
System email address = iferianto@yahoo.com
from system name = Imam Video Tutorial Teams
( sampai step ini, Jangan tekan tombol update dulu ! )
Untuk lebih menyakinkan dan mengetahui path ffmpeg flvtool dan lainnnya ketik pada Xterm ketikan:
which ffmpeg ; which flvtool2 ; which mencoder
kemudian paste path yang benar dari tool2 tersebut di text box isian setting server diatas
>> click tombol [update information],
setelah muncul username : admin , password = admin
>> kemudian click tombol [Finish – Admin login]
pada step ini proses instalasi selesai anda bisa login sebagai user= admin dan password admin untuk melakukan manajemen situs. Untuk mengupload video anda harus melakukan registrasi sebagai user dan login dengan user tersebut. Kemudian pada bagian admin tinggal melakukan aproove atas video content yang diupload oleh user tersebut.
Proses selanjutnya untuk mengamankan site, maka anda hapus folder setup pada Xterm
rm -rf /var/www/motion/setup
>> ahirnya proses instalasi selesai
[ Selamat anda sekarang sudah mempunyai situs Youtube Clone milik anda sendiri ! ]
Untuk lebih jauh script ini dapat dikembangkan dan ditambahkan fitur2 lain dengan mudah bagi yang sudah mempelajari PHP. Semoga tutorial ini berguna dan bermanfaat bagi anda dan juga rekan developer yang lain. Kurang lebihnya mohon maaf bila ada sedikit kesalahan atau kekurangan instruksi atau kurang jelas.
Wassalamualaikum wrbb.
Bila ada pertanyaan dan bantuan support silahkan menghubungi:
Imam Ferianto
YM/Email : iferianto [et] yahoo [dot] com
Blogs : http://iferianto.blogdetik.com , http://iferianto.multiply.com ,
Contact: http://www.bernas.co.id/redaksi.php
Referensi:
- Install ffmpeg-php pada ubuntu, http://linux.justinhartman.com/FFmpeg,_FFmpeg-PHP,_Lame,_Libogg,_Libvorbis,_FLVtool2,_Mplayer,_Mencoder,_AMR_Installation
- Install ffmpeg from source, http://www.ubuntudog.com/?article=18
- Howto install phpmotion, http://wiki.phpmotion.com/doku.php?id=installation_instructions
Tambahan Tips & Triks :
# Bila Saat registrasi user image verification tidak muncul
maka anda harus mengedit file
/var/www/motion/image.php , ubah baris 75,
ganti :
imagettftext($source, $fontsize, 0, 0, 18, $forecolors, “Alpha Romanie G98.ttf”, substr($_SESSION['teassocaptcha'], $i, 1));
menjadi :
imagettftext($source, $fontsize, 0, 0, 18, $forecolors, “/var/www/motion/Alpha Romanie G98.ttf”, substr($_SESSION['teassocaptcha'], $i, 1));
Bila ada error imagerotate() not exists!, maka berarti ada bug pada php5 ubuntu dan perlu dicompile ulang. Langkah compile PHP5 adalah:
# Install build tools, debian helpers and fakeroot
apt-get install build-essential debhelper fakeroot
cd /usr/src# Download PHP sourceapt-get source php5# Install all packages required to build PHP5sudo apt-get build-dep php5cd php5-5.2.3# periksa filedebian/rulespicodebian/rulesubah:--with-gd=shared,/usr --enable-gd-native-ttfjadi :--with-gd=shared --enable-gd-native-ttf# build the php5-* packagesdpkg-buildpackage -rfakerootcd ..# Install the new php5-gd packagels *.debdpkg -i php5-gd_5.2.3-1ubuntu6.3_i386.deb
Tutorial ERD ke database dan vb6 ADO untuk hilda
Agustus 12, 2008 — Imam FeriantoTutorial ERD ke database dan vb6 ADO untuk hilda
Instalasi MySQL win32 dan Koneksi VB.NET MyODBC
Agustus 8, 2008 — Imam FeriantoBerikut adalah video Tutorial Instalasi MySQL win32 dan Koneksi VB.NET MyODBC
Dibuat special untuk Hilda My Friends
Ayo semangat ! & Cepet lulus ya!
Murah dengan Tunelling
Maret 27, 2008 — Imam FeriantoBiaya akses internet terutama di daerah untuk link internasional biasanya mahal dibandingkan dengan akses di Jakarta. Sedangkan untuk akses lokal (sebut IIX) harganya lebih murah atau bahkan bisa gratis. Dalam beberapa kasus, dengan kondisi ini kita bisa memperoleh alternatif biaya internet yang lebih murah dengan teknologi tunelling, definisi tunelling sendiri banyak, yang saya maksud tunneling disini adalah membungkus paket dalam sebuah aliran data (trafik) SSL /SSH atau yang biasanya juga disebut sebagai Port Forwading. Tujuan utama SSH tunelling sebenarnya adalah mengamankan paket yang lewat pada jaringan. Dengan tunel SSH ini kita bisa menumpangkan bermacam paket seperti VOIP, VNC, VPN dan lainnya secara terenkripsi. Logikanya adalah kita memakai jalur lokal IIX yang sudah kita sewa menuju gateway/server ISP kita yang ada di jakarta kemudian dari situ diarahkan ke gateway internasional. Untuk mewujudkannya secara teknis pada linux kita bisa menggunakan ssh tunell ataupun vtun, nah untuk windows banyak juga sofware yang dapat dipake. Contoh sintak ssh tunel pada linux :
ssh -L localport:host:hostport user@ssh_server -N , contoh
ssh -L 8080:202.111.111.11:80 user at 202.111.111.11 -n
Untuk kali ini saya akan mendemonstrasikan SSH tunnel menggunakan software ssh client yang disebut putty.exe pada windows XP , screenshort settingan putty.exe yang dijalankan pada windows untuk melakukan koneksi tunnel .
1.Pilih ssh tunnel , isikan port sembarang yang tidak umum (yang tidak dipake), misal 8080 dan pilih dinamic dan click add
2. Click add
3. Pada session isikan target ISP atau server IIX yang bisa kita hubungi
4. Setelah itu click save , sehingga untuk sesi berikutnya dapat kita load lagi
5. loginlah pada server IIX yang bisa di ssh tersebut
6. Pada browser atau aplikasi yang akan menggunakan tunel ini setting proxy menggunakan sock server (versi 4 atau 5), coba-coba biasanya yang terbaru versi 5, isikan server 127.0.0.1 (komputer kita sendiri) dan portnya misal 8080
Kemudian browsing dapat dilakukan seperti biasanya
Instalasi MultiBlog (aka blogdetik) WordpressMu
Maret 27, 2008 — Imam FeriantoMultiblog atau blog multiuser yang sering digunakan untuk blog-blog gratis yang memiliki banyak subdomain alias misalnya iferianto.multiply.com pada dasarnya dapat diwujudkan dengan menggunakan “emulasi virtual domain” atau domain boongan, hal ini untuk mempermudah jika pendafaran subdomain sangat dinamis, keuntungannya kita tidak usah mengkonfigurasikan ulang name server kita untuk subdomain baru. Mekanisme ini diwujudkan dengan membolehkan wildcard akses “*” pada server domain kita (misalnya menggunakan BIND). Jadi semua request subdomain tersebut diarahkan (pointing) ke domain utama, selanjutnya nameserver (misal BIND) akan melakukan forward langsung ke webserver (misalnya APACHE) kemudian dari webserver ini request subdomain akan ditranslasikan kembali misalnya menjadi URL asli (misalnya menggunakan URL rewriter atau mod rewrite ataupun menggunakan vhost), sebagai analogi misalkan request ke:
1. http://iferianto.multiply.com sebenarnya adalah http://www.multiply.com/user/iferianto
2. http://iferianto.blogdetik.com bisa jadi adalah http://www.blogdetik.com/blog/iferianto
Berikut adalah langkah teknis untuk mewujudkan sebuah multiblog wordpressmu & Linux:
1. Install Apache2, bind9, mysql, php5, php5-mysql, php5-gd,apache-mod-rewrite
2. Install wordpressmu http://mu.wordpress.org/download/
3. Konfigurasikan bind untuk menerima request semua subdomain (wilcard * DNS request)
pada CNAME ataupun A records
#FILE: /etc/bind/named.conf
* 14400 IN CNAME blogs.unsoed.ac.id
4. Konfigurasikan Apache untuk menerima semua request wildcard ke 1 domain utama (contoh, misalnya)
<virtualhost >
ServerAlias www.unsoed.ac.id
ServerAdmin iferianto at yahoo.com
DocumentRoot /var/www/blogs.unsoed.ac.id/public_html
ServerName blogs.unsoed.ac.id
User blogs
Group blogs
ServerAlias *.blogs.unsoed.ac.id
</virtualhost>
5. selanjutnya ada 2 cara yang dapat dipilih:
a.Misal menggunakan Vhost,
UseCanonicalName off
VirtualDocumentRoot /var/www/%-2.0.%-1/%-3
- buat symbolik link ke path asli, subdomain ke path asli
b.Misal menggunakan mod rewrite, Konfigurasikan .htacces atau httpd.conf untuk mod rewrite, forward ke URL asli
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# Show Stats
# :: added this to show AWStats stats
RewriteCond %{REQUEST_URI} ^/(stats|failed_auth\.html)/?(.*)$ [NC]
RewriteRule ^.*$ - [L]
# Rewrite www.domain.com to domain.com
RewriteCond %{HTTP_HOST} ^www\.(.*)
RewriteRule ^(.*) http://%1/$1 [R,L]
# mod_dir fix.
# :: Added from other mod_rewrite.com recipe
RewriteCond %{HTTP_HOST} ^([^\.]+)\.blogs.unsoed.ac.id$ [NC]
RewriteCond %{DOCUMENT_ROOT}/subsites/%1%{REQUEST_URI}/ -d
RewriteRule !/$ %{REQUEST_URI}/ [R=301,L]
# If directory exists for subdomain, rewrite it.
# :: Added from other mod_rewrite.com recipe
RewriteCond %{HTTP_HOST} ^([^\.]+)\.blogs.unsoed.ac.id$ [NC]
RewriteCond %{DOCUMENT_ROOT}/subsites/%1/ -d
RewriteCond %1%{REQUEST_URI} !^([^\.]+)/\1(/.*)?$
RewriteRule ^(.*)$ /subsites/%1/$1 [QSA,L]
# /subsites/subdomain/ –> subdomain.yourdomain.org
# :: Added from other mod_rewrite.com recipe
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteCond %{REQUEST_URI} ^/([^/]+)(/.*)?$
RewriteCond %{DOCUMENT_ROOT}/subsites/%1/ -d
RewriteRule .* http://%1.blogs.unsoed.ac.id%2 [R=301,L]
####################################
#
# Here below start the WPMU rules that work quite fine ![]()
#
####################################
#uploaded files
RewriteRule ^(.*)?/?files/(.*) wp-content/blogs.php?file=$2 [L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule . - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-.*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
Edit wp-settings.php untuk menerima request URI asli tambahkan di baris paling atas
$_SERVER['REQUEST_URI']=$_SERVER['HTTP_X_ORIGINAL_URL'];
6. Restart BIND dan APACHE
7. Test request DNS dengan nslookup, seharusnya apapun subdomainya mengarah ke domain utama.





