Anda di halaman 1dari 11

Halaman 1 dari 10

Membuat Situs Youtube Clone


Ditulis dan dikerjakan Oleh: Imam Ferianto Pada 4 September 2008 Env: Linux Ubuntu !"0 pada #m$are % & $ind'$s xp Pengantar (ssalamualaikum $rbb! YOUTUBE merupakan situs vide'bl'))in) * vide'sharin)*vide'ne$s +an) belakan)an san)at terkenal! Di ,nd'nesia sendiri sekaran) sudah mulai berkemban) -'ntent vide' ne$s seperti dari k'mpas!tv& la+artan-ap!-'m & detikvide' & S./# ne$s dan lainn+a! PHPMOTION adalah 'pens'ur-e vide'sharin) +an) mempun+ai 0itur hampir sama den)an +an) dimiliku +'utube!-'m sehin))a dapat disebut ju)a seba)ai YOUTUBE CLONE! Dan keun))ulan lain .1S vide' bl') ini tersedia s'ur-en+a dan 0ree den)an lisensi GPL! Untuk keperluan pembelajaran&maka bila kita in)in mempun+ai situs serupa +'utube& P2P1O/,O3 adalah pilihan tepat! P2P1O/,O3 sendiri men))unakan P2P dan PE4L seba)ai s-riptin) en)ine untuk 0'ndasi s+stemn+a dan ba-kedn m+s5l server untuk data st'ra)e 6bisa ju)a den)an server database lainn+a7 serta men))unakan beberapa t''l untuk vide'-'nvert dan vide'-apture seperti lame& ')) v'rbis -'de-& men-'der& 0lvt''l dan 00mpe)! Pada sesi kali ini kita akan merevie$ dan belajar melakukan instalasi P2P1O/,O3 pada server Linux Ubuntu Server !"0! Dipilihn+a ubuntu karena relativ lebih mudah untuk pemula sebab instalasi dasar men))unakan dasar 't'matis apt8)et +an) akan men)install dan mend'$nl'ad dependen-ies se-ara 't'matis! (taupun bisa men))unakan distr' linux +an) lain misaln+a redhat*9ed'ra dan mandriva den)an :um ataupun Urpmi! Sebenern+a P2P1O/,O3 ju)a bisa diinstall di $ind'$s dan berjalan n'rmal di plat0'rm tersebut! /etapi baiklah pada bahasan ini kita 0'kus pada ubuntu linux +an) 'pens'ur-e ; ! Tips Note! 1un)kin pada saat anda men-'ba tut'rial ini ada +an) kuran) pas& bisa disesuaikan dan di tune la)i sesuai den)an k'n0i)urasi s+stem dan OS +an) anda miliki! Dan bila ada salah istilah dan kata +an) dipakai penulis adalah keterbatasan pen)etahuan penulis +an) belajar Ot'didak sendiri!

Halaman 2 dari 10 Lang"a# instalasi Den)an tanpa ban+ak basa basi marilah kita se)era melakukan instalasin+a& a)ar lebih seman)at mun)kin bisa sambil menden)arkan la)u mp<! =erikut adalah lan)kah8 lan)kah untuk melakukan instalasi phpm'ti'n pada ubuntu server

$% Lang"a# persiapan
(nda harus terlebih dahulu men)install ubuntu linux pada k'mputer atau server anda dan harus terhubun) ke internet dan memiliki ,P (ddres publik sendiri bila in)in bisa diakses dari luar 6untuk p'intin) d'main ataupun le$at 3(/ dan dinami- D3S7! (tau bila anda men))unakan servis $ebh'stin) anda harus memilih paket privat $ebh'stin) dedi-ated atau #PS atau servis -'l'-ati'n 6sila#"an #ubungi penulis ut" #al ini7 den)an servis ssh dan -'ns'le sehin))a kita bisa men)install apapun di server tersebut dan melakukan p'intin) d'main ke server kita! /etapi untuk bahan eksperiment kita bisa men))unakan k'mputer l'kal +an) diakses se-ara L(3 dan bahkan melalui virtual ma-hine pun bisa! 6Penulis sendiri men)install php m'ti'n pada Ubuntu Linux 8!04 +an) berjalan diatas #1>are % pada OS $ind'$s ?P +an) kemudian nantin+a OS Image n+a dapat didevel'p dan di-'p+ ke mesin sebenarn+a den)an mudah7

&% 'o(nloa) p#pmotion


d'$nl'ad pada $ebsite #ttp!**(((%p#pmotion%+om #ttp!**(((%p#pmotion%+om 6anda harus re)ister dulu pada 0'rum a)ar bisa melakukan d'$nl'ad7 & pilih +an) versi untuk p#p,- kemudian d'$nl'ad an taruh 0ile di 0'lder misaln+a: *#ome*imam*PHPMOTION.PHP,%/ip

0% up)ate apt sour+e


su)o 3i apt3get up)ate apt3get upgra)e

update dulu apt8s'ur-en+a untuk mendapatkan data s'0t$are terbaru& pada -'ns'le 1TE2M

4% install apa+#e& )an m5s6l, )an p#p, )an perl +gi


apt3get install apa+#e& p#p, libapa+#e&3mo)3p#p, m5s6l3ser7er3,%8 p#p,3m5s6l l5n93 +ur libapa+#e&3mo)3spee)5+gi Periksa k'n0i)urasi php!ini pi+o *et+*p#p,*apa+#e&*p#p%ini sesuikan isi php!ini den)an k'n0i)urasi +and dibutuhkan di ba$ah ini:

Halaman 3 dari 10

open.base)ir : ;"osong"an< uploa).ma9.=ilesi/e : $88M post.ma9.si/e : $88M ma9.e9e+ution.time : $,88 session%g+.ma9li=etime : $4888 sa=e.mo)e : o== enable.)l : On s#ort.open.tag : on e9tension.)ir : >%*? @ Start apa+#e )an m5s6l ser7er *et+*init%)*apa+#e& start *et+*init%)*m5s6l start @test k'neksi ke m+s5l dan lihat database +an) sudah ada m5s6l 3u root 3e >s#o( )atabases? seharusn+a ada 'utput nama database seperti Am+s5l dan testB @test php dan apa-he +) *7ar*(((* e+#o ABCp#p p#pin=o;<DCEA E in=o%p#p D +#mo) F,, in=o%p#p @test dan br'$sin) ke l'-alh'st den)an l+nk atau br'$ser & apakah apa-he dan php sudah jalan! l5n9 #ttp!**lo+al#ost*in=o%p#p atau bro(se ! #ttp!**l$G&%$HI%$$H%0*in=o%p#p seharusn+a sudah ada 'utput dari br'$ser l+nx +an) meneran)kan tentan) php dan m'dul +an) terinstall& periksa hasiln+a

,% install so=(are )an tool pen)u"ung lain


apt3get install libJpeg3progs libJpegH& libJpegH&3)e7 libs)l$%&3)e7 p#p,3)e7 buil)3essential un/ip libalogg3 )e7 @d'$nl'ad t''l tambahan +) *usr*lo+al*sr+

Halaman 4 dari 10 http:**$$$<!mpla+erh5!hu*1Pla+er*releases*-'de-s*essential8200 "00 !tar!bC2 http:**rub+0'r)e!'r)*0rs*d'$nl'ad!php*" 4D *0lvt''l28"!0!E!t)C http:**eas+ne$s!dl!s'ur-e0'r)e!net*s'ur-e0'r)e*lame*lame8<!D !tar!)C http:**superb8$est!dl!s'ur-e0'r)e!net*s'ur-e0'r)e*00mpe)8php*00mpe)8 php80!%!0!tbC2 (get http:**d'$nl'ads!xiph!'r)*releases*'))*lib'))8"!"!<!tar!)C (get http:**d'$nl'ads!xiph!'r)*releases*v'rbis*libv'rbis8"!2!0!tar!)C (get http:**0tp!pen)uin!-C*pub*users*utx*amr*amrnb8 !0!0!2!tar!bC2 (get http:**0tp!pen)uin!-C*pub*users*utx*amr*amr$b8 !0!0!<!tar!bC2 (get http:**d'$nl'ads!xiph!'r)*releases*the'ra*libthe'ra8"!0beta<!tar!)C
(get (get (get (get @extra-t s'ur-e t''l tersebut tar /97= lame30%GF%tar%g/ tar /97= libogg3$%$%0%tar%g/ tar /97= lib7orbis3$%&%8%tar%g/ tar /97= =l7tool&3$%8%H%tg/ tar J97= essential3&88F$88F%tar%b/& tar J97= ==mpeg3p#p38%,%8%tb/& b/ip& 3+) amrnb3F%8%8%&%tar%b/& K tar 97= 3 b/ip& 3+) amr(b3F%8%8%0%tar%b/& K tar 97= 3 tar /97= libt#eora3$%8beta0%tar%g/

@buat 0'lder untuk instalasi -'dem")ir *usr*lo+al*lib*+o)e+s* @install subversi'n -lient apt3get install sub7ersion rub5 lib+urses3rub5 @d'$nl'ad 00mpe) dan mpla+er t''l s'ur-e s7n +#e+"out s7n!**s7n%mpla5er#6%#u*==mpeg*trun" ==mpeg s7n +#e+"out s7n!**s7n%mpla5er#6%#u*mpla5er*trun" mpla5er +) *usr*lo+al*sr+*mpla5er s7n up)ate @pindahkan -'de- +an) sudah di d'$nl'ad ke 0'lder -'de m7 *usr*lo+al*sr+*essential3&88F$88F*L *usr*lo+al*lib*+o)e+s* @-hm'd a)ar -'de- bisa di jalankan +#mo) 32 F,, *usr*lo+al*lib*+o)e+s* @buat 0'lder temp untuk -'dem")ir *usr*lo+al*sr+*tmp +#mo) FFF *usr*lo+al*sr+*tmp

Halaman 5 dari 10
e9port TMP'I2:*usr*lo+al*sr+*tmp

Install lame
@installasi lame t''l untuk k'nversi suara mp< dan bitrate +) *usr*lo+al*sr+*lame30%GF %*+on=igure ma"e ma"e install

Install libogg
+) *usr*lo+al*sr+*libogg3$%$%0 %*+on=igure ma"e ma"e install

Install lib7orbis
+) *usr*lo+al*sr+*lib7orbis3$%&%8 %*+on=igure ma"e ma"e install

Install =l7tool&
+) *usr*lo+al*sr+*=l7tool&3$%8%H* rub5 setup%rb +on=ig rub5 setup%rb setup rub5 setup%rb install

Install mpla5er

men+o)er

+) *usr*lo+al*sr+*mpla5er %*+on=igure 33enable3Jpeg ma"e ma"e install

Install MM2 ;=or 0gp +on7ersion<


+) *usr*lo+al*sr+*amrnb3F%8%8%& %*+on=igure ma"e ma"e install +) *usr*lo+al*sr+*amr(b3F%8%8%0 %*+on=igure ma"e ma"e install

Install libt#eora ;=or ogg 7i)eo en+o)ing<


+) *usr*lo+al*sr+*libt#eora3$%8beta0 %*+on=igure ma"e ma"e install

Halaman 6 dari 10

Install ==mpeg
%*+on=igure 33enable3libmp0lame 33enable3lib7orbis N 33)isable3mm9 33enable3s#are) 33enable3libamr3nb N 33enable3libt#eora Oenable3non=ree ma"e ma"e install ln 3s *usr*lo+al*lib*liba7)e7i+e%so%,& *usr*lib*liba7)e7i+e%so%,& ln 3s *usr*lo+al*lib*liba7=ormat%so%,& *usr*lib*liba7=ormat%so%,& ln 3s *usr*lo+al*lib*liba7+o)e+%so%,$ *usr*lib*liba7+o)e+%so%,$ ln 3s *usr*lo+al*lib*liba7util%so%4G *usr*lib*liba7util%so%4G ln 3s *usr*lo+al*lib*libmp0lame%so%8 *usr*lib*libmp0lame%so%8 ln 3s *usr*lo+al*lib*liba7=ormat%so%,$ *usr*lib*liba7=ormat%so%,$ ln 3s *usr*lo+al*lib*libamrnb%so%& *usr*lib*libamrnb%so%&

H% Instalasi PHPMOTION
,nstalasi berikut adalah bila phpm'ti'n akan diinstall pada sub0'lder 6-'nt'hn+a #ttp!**(((%5our)omain%+om*motion* 7

@un/ip p#pmotion +) *7ar*((( m")ir motion D +) motion un/ip *#ome*imam*PHPMOTION.PHP,%/ip rm 3r= PHPMOTION.PHP, m7 PHPMOTION.PHP,*PHPMOTION* % rm 3r= m7 PHPMOTION.PHP, +#mo) 32 FFF setup pi+tures +lasses temp logs a))ons uploa)s +#mo) 32 F,, +gi3bin File beri"ut #arus )ie)it! pi+o *7ar*(((*motion*+gi3bin*uu.)e=ault.+on=ig%pm Pa)a Bagian !
-'n0i)F0ileFname tempFdir upl'adFdir redire-tFurl pathFt'Fupl'ad GH IuuFde0aultF-'n0i)I& GH JE3#KIDO.U1E3/F4OO/IL ! I*temp*I& GH JE3#KIDO.U1E3/F4OO/IL ! I*upl'ads*avi*I& GH I*upl'aderF0inished!phpI& GH I*upl'ads*avi*I&

Uba# menJa)i !
-'n0i)F0ileFname tempFdir GH IuuFde0aultF-'n0i)I& GH JE3#KIDO.U1E3/F4OO/IL ! I*m'ti'n*temp*I&

Halaman 7 dari 10
upl'adFdir redire-tFurl pathFt'Fupl'ad GH JE3#KIDO.U1E3/F4OO/IL ! I*m'ti'n*upl'ads*avi*I& GH I*m'ti'n*upl'aderF0inished!phpI& GH I*m'ti'n*upl'ads*avi*I&

@simpan #asil e)itan ; +rtrl 1 <

pi+o *7ar*(((*motion*uploa)er.+onlib%p#p

Pa)a bagian!
JpathFt'Fupl'adFs-ript G I*-)i8bin*uuFupl'ad!plIM JpathFt'FiniFstatusFs-ript G I*-)i8bin*uuFiniFstatus!plIM

Uba# menJa)i!
JpathFt'Fupl'adFs-ript G I*m'ti'n*-)i8bin*uuFupl'ad!plIM JpathFt'FiniFstatusFs-ript G I*m'ti'n*-)i8bin*uuFiniFstatus!plIM

@setup database untuk phpm'ti'n pada -'ns'le xterm ketikkan m5s6l 3u root 3pra#asia 3e A+reate )atabase motionDgrant all pri7ileges on motion%L to motionuserPlo+al#ost i)enti=ie) b5 QmotionpassQ A buka br'$ser anda dan br'$sin) ke alamat l'-al atau k'mputer anda: misal! #ttp!**$&F%8%8%$*motion*setup* atau! #ttp!**$G&%$HI%$$H%0*motion*setup*

.li-k t'mb'l next HH 2 kali sampai mun-ul input k'n0i)urasi database M5s6l Host : lo+al#ost 'atabase Name : motion 'atabase Username : motionuser 'atabase Pass(or) : ra#asia

Halaman 8 dari 10 .li-k next HH la)i & kemudian pada server settin)& isikan 6misaln+a7 seba)ai berikut

Site name : Imam Ri)eo Tutorial Site base url : #ttp!**$G&%$HI%$$H%0*motion 'ate =ormat : )3m35 Pat# to ==mpeg : *usr*lo+al*bin*==mpeg Pat# to =l7tool& : *usr*bin*=l7tool& Pat# to men+o)er : *usr*lo+al*bin*men+o)er S5stem email a))ress : i=eriantoP5a#oo%+om =rom s5stem name : Imam Ri)eo Tutorial Teams

; sampai step ini- Sangan te"an tombol up)ate )ulu T < Untuk lebih men+akinkan dan men)etahui path 00mpe) 0lvt''l dan lainnn+a ketik pada ?term ketikan: $hi-h 00mpe) M $hi-h 0lvt''l2 M $hi-h men-'der kemudian paste path +an) benar dari t''l2 tersebut di text b'x isian settin) server diatas HH -li-k t'mb'l Uup)ate in=ormationVsetelah mun-ul username : admin & pass$'rd G admin HH kemudian -li-k t'mb'l UFinis# O M)min loginV pada step ini pr'ses instalasi selesai anda bisa l')in seba)ai userG admin dan pass$'rd admin untuk melakukan manajemen situs! Untuk men)upl'ad vide' anda harus melakukan re)istrasi seba)ai user dan l')in den)an user tersebut! Nemudian pada ba)ian admin tin))al melakukan apr''ve atas vide' -'ntent +an) diupl'ad 'leh user tersebut!

Halaman 9 dari 10

Pr'ses selanjutn+a untuk men)amankan site& maka anda hapus 0'lder setup pada ?term rm 3r= *7ar*(((*motion*setup HH ahirn+a pr'ses instalasi selesai U Selamat an)a se"arang su)a# mempun5ai situs Youtube Clone mili" an)a sen)iri T V Untuk lebih jauh s-ript ini dapat dikemban)kan dan ditambahkan 0itur2 lain den)an mudah ba)i +an) sudah mempelajari P2P! Sem')a tut'rial ini ber)una dan berman0aat ba)i anda dan ju)a rekan devel'per +an) lain! Nuran) lebihn+a m'h'n maa0 bila ada sedikit kesalahan atau kekuran)an instruksi atau kuran) jelas! >assalamualaikum $rbb! =ila ada pertan+aan dan bantuan supp'rt silahkan men)hubun)i: Imam Ferianto :1*Email : i0eriant'O+ah''!-'m =l')s : http:**i0eriant'!bl')detik!-'m & http:**i0eriant'!multipl+!-'m & .'nta-t: http:**$$$!bernas!-'!id*redaksi!php 2e=erensi! 1. ,nstall 00mpe)8php pada ubuntu& http:**linux!justinhartman!-'m*99mpe)&F99mpe)8 P2P&FLame&FLib'))&FLibv'rbis&F9L#t''l2&F1pla+er&F1en-'der&F(14F,nstallati'n 2. ,nstall 00mpe) 0r'm s'ur-e& http:**$$$!ubuntud')!-'m*Parti-leG"8 3. 2'$t' install phpm'ti'n& http:**$iki!phpm'ti'n!-'m*d'ku!phpP idGinstallati'nFinstru-ti'ns

Tamba#an Tips

Tri"s !

@ =ila Saat re)istrasi user ima)e veri0i-ati'n tidak mun-ul maka anda harus men)edit 0ile

Halaman 10 dari 10 *var*$$$*m'ti'n*ima)e!php & ubah baris %& ganti ! imagett=te9t;Wsour+e- W=ontsi/e- 8- 8- $I- W=ore+olors- AMlp#a 2omanie GGI%tt=Asubstr;W.SESSIONUQteasso+apt+#aQV- Wi- $<<D menJa)i ! imagett=te9t;Wsour+e- W=ontsi/e- 8- 8- $I- W=ore+olors- A*7ar*(((*motion*Mlp#a 2omanie GGI%tt=A- substr;W.SESSIONUQteasso+apt+#aQV- Wi- $<<D =ila ada err'r ima)er'tate67 n't exists;& maka berarti ada bu) pada php% ubuntu dan perlu di-'mpile ulan)! Lan)kah -'mpile P2P% adalah: @ ,nstall build t''ls& debian helpers and 0aker''t apt3get install buil)3essential )eb#elper =a"eroot @ s'ur-e -'de sh'uld reside in *usr*sr+) *usr*sr+ @ D'$nl'ad P2P s'ur-e apt3get sour+e p#p, @ ,nstall all pa-ka)es re5uired t' build P2P% su)o apt3get buil)3)ep p#p, +) p#p,3,%&%0 @ periksa 0ile debian/rules pi+o debian/rules uba#! --with-gd=shared,/usr --enable-gd-native-ttf Ja)i ! --with-gd=shared --enable-gd-native-ttf @ build the php%8Q pa-ka)es )p"g3buil)pa+"age 3r=a"eroot +) %% @ ,nstall the ne$ php%8)d pa-ka)e ls L%)eb )p"g 3i p#p,3g).,%&%03$ubuntuH%0.i0IH%)eb

Halaman 11 dari 10

Xriter Pro=ile
,mam 9eriant' are 9reelan-e Pr')rammer& Le-turer& S+sadmin and database admininstrat'r $ith ba-k)r'und m're than +ear pr'0esi'nal 'n 0ield! Str'n) Pr')rammin) skill 0r'm sel0 learnin) b+ d'in)! ,mam $as b'rn 'n 2" (pril "D80 'n Pur$'kert'! 2ire b+ several -'mpanies 0'r help and devel'pin) their s+stem! 3'$ $'rk as partime sta00 'n Renderal Sudirman Universit+ Pur$'kert'!

Anda mungkin juga menyukai