Menggunakan Linux (ubuntu) sebagai perangkat web development

susah banget cari judulnya, sampe-sampe ngudut (merokok dalam bahasa jawa) abis dua batang, so ini tulisan simple yang saya tulis untuk bahan belajar saya secara khusus dan buat bahan belajar teman-teman secara luas, tulisan saya kali ini tidak muluk-mulik, karena hanya bercerita sedikit tentang menggunakan linux sebagai media dalam web development.

saya yakin, banyak dari teman-teman yang menggunakan Windows untuk Web Development, ya sah-sah saja, dan tidak ada yang melarang, lagian kan hak masing-masing mau menggunakan apa dalam membangun apa :), well tetapi saya pribadi terkadang masih mendapati berbagai kendala yang menurut saya sebenarnya bukan masalah besar tetapi akan menghabiskan waktu jika tidak paham dan kurang mengerti sebabnya, misalnya di windows .htaccess berjalan lancar tetapi kok tiba-tiba setelah di hosting (upload) menjadi error, ada lagi misalya kok di hosting File config.php saya tidak ditemukan padahal filenya ada, atau kok tiba-tiba web yang saya kerjakan menjadi forbiden dan semua file-file gambar dan CSS/JS nya tidak bisa dibuka.

banyak dari teman-teman developer yang sering mendapatkan permasalahan seperti diatas, permasalahan yang sebenarnya cukup simple menjadi permasalahan yang menghabiskan waktu, berdasarkan pemikiran itulah tulisan ini pun hadir, dalam tulisan ini saya tidak membahas secara rinci bagaiamana menginstall linux Ubuntunya, karena saya yakin Google lebih bisa dan berkompeten dalam hal ini, tetapi lebih ke apa yang dibutuhkan, dan begaiaman configurasi dasar dan hak pengaturan hak akses, well let’s make it smile, siapkan rokok, kopi dan musik kesukaan, karena akan butuh waktu(bukan bacanya, tapi downloadnya :D), o iya, sebagian besar code dalam tulisan ini dijalankan melalui terminal, so mudah-mudahan teman-teman bisa lebih terbiasa dalam menggunakan terminal di linux

Kebutuhan Dasar

Instalasi PHP5
Instslasi PEAR
Instalasi PHING
Instlasi Git
Instalasi memcache
Instalasi apache2
Instalasi nginx
agar tidak konflik dengan apache2 sebaiknya kita merubah port default dari nginx pada file /etc/php5/fpm/pool.d/www.conf , kemudian melakukan restrat
Instalasi mysql
Instalasi SQLite
aktifkan ekstensi untuk sqlite  pada file /etc/php5/conf.d/sqlite.ini  dengan menambahkan baris extension=sqlite.so

Instalasi gmagick

Buat file baru di /etc/php5/conf.d/gmagick.ini  dan tambahkan baris kode extension=gmagick.so  , agar php dapat menggunakan ekstensi ini.

Instalasi curl

Instalasi CodeSniffer

Instalasi PHPUnit

terkadang dengan menginstal software tertentu PHPunit ikut terinstall dengan versi tertentu, untuk memastikannya, sebaiknya kita unsinstall dulu dan kemudian install dengan versi yang terbaru

Install php-cs-fixer

Instalasi PHP Storm IDE

sebenarnya untuk Editor tidak harus menggunakan PHP Storm IDE, bisa saja menggunakan editor yang lain, saya memilih IDE ini karena fiturnya cukup lengkap dalam debuging dan hal yang lainya.
Download dan install PHP Storm
Install Sun JDK
Rubah batas watching limit

Instlasi NodeJs + Grunt + Bower

Instalasi PNG Tools for Iconizr

Konfigurasi

Rubah file berikut

dengan konfigurasi seperti dibawah (tidak harus sama, sesuaikan dengan kebutuhan masing-masing)

Debugging Dengan XDebug Di Browser Dan Command line

pada contoh ini saya menyesuaikan kebutuhan saya, dimana saya menggunakan PHPStrom IDE dan Apache2 sebagai server utama,

kemudian Edit File /etc/php5/mods-available/xdebug.ini dan rubah isinya seperti pada kode dibawah

Edit Settings yang ada di PHPStorm dengan meng-klik File->Settings->PHP->Debug  dan rubah port nya menjadi 9002 kemudian install plugin xdebug untuk firefox 

pada contoh configurasi ini saya lebih banyak menyesuaikan konfigurasi untuk bekerja dengan laravel dan Symfony, jika teman-teman tidak menggunakan laravel atau symfony bisa skip bagian ini, tergantung kebutuhan masing-masing ya 🙂

Konfigurasi Apache2 (Symfony2 framework)
saya menjadikan folder /home/khairu/www  sebagai dokumen root saya (tempat file-file web), disesuaikan dengan path masing-masing ya 🙂

Contoh Konfigurasi Nginx (untuk Symfony2 framework)

tidak semua harus seperti diatas, banyak cara dan kebutuhan berbeda, tergantung orangnya, dibawah ini saya menyertakan script bash untuk menginstall Kebutuhuan-Kebutuhan diatas (siapa tau ada yang butuh), cukup dengan menjalan perintah bash install.sh saja, semua kebutuhan dasar untuk web development di-ubuntu akan tersinstall secara otomatis,

 

 

Published by

Khairu Aqsara

Khairu Aqsara a Web Developer almost every day and enjoys writing about his experiences . If you need help with your next project you know where to look.