Sabtu, 05 November 2016

Mengenal htaccess untuk mempercantik URL website


Jika agan sering menggunakan framework seperti laravel atau codeigniter(CI) maka agan akan sering melihat sebuath file berextensi .htaccess yang ada di direktori file framework tersebut, jujur pas ane pake framework ane engga tahu pasti apa kegunaanya, yang ane tahu pas ane pake CI ane risih dengan index.php dan ingin menghilangkan index.php dari url website ane, nah ane cari tahu di google bagaimana caranya, dan ternyata ane bertemu lah dengan .htaccess, nah dari situ yang ane tahu bahwa .htaccess digunain buat menghilangkan index.php dari url website, begitu pun dengan laravel yang menghilangkan index.php dari url website.

Tapi dari waktu kewaktu ane sedikit pengen tahu kok peletakan query string atau parameters di framework sangat beda dengan php native pada umumnya, yang biasayanya
Jika di PHP native untuk menyisipkan query string menggunakan ?nameparam=nilaiparam, tapi dengan framework itu semua diganti menjadi {domain}/namaparam/nilaiparam, nah dari situ ane mulai mencari tahu kok bisa ?, dan cari-cari di google ternyata itu adalah kerjaanya si .htaccess,, nah lohh ternyata ane baru tahu klo .htaccess digunain buat modify url atau modify url, wah ane terkejut selain buat modify url .htaccess juga bisa mengatur dan me-manage url akses website, kita bisa membuat sebuah pengaturan misalkan url untuk akses asset seperti css, jquery yang seharunya tidak bisa di akses oleh user tapi kebanyatakan masih user masih bisa akses folder asset dari sebuat website, nah untuk menghindari hal yang berbaya seperti itu maka kita bisa mengatur agar user tidak bisa mengakses folder resource dengan .htaccess gan,, wow keren kan. htaccess juga bisa dibilang bisa digunain but keamanan user dan membatasi akses user.

Jujur ane belum expert dalam .htaccess, ane baru belajar .htaccess baru-baru ini hehe, tapi ane udah belara bagaimana overide url query string menjadi kaya framework-framework terkenal gan hehe, keren 

Ane bakalan kasih sedikit koding di .htaccess yang digunain buat overide url 

Pertama. siapkan peralatan :
  1. Laptop 
  2. Apache
Kedua, pastikan Mod_Rewrites yang ada di apache itu active, ane pake ubuntu gan, jadi untuk mengactivekan itu ane cuman tinggal mengetikan perintah dibawah ini untuk mengaktifkan Mod_Rewrites :
sudo a2enmod rewrite

Nah jika udah success makan akan muncul output : Module rewrite already enabled
Ketiga, jika sudah enabled maka kita allow kan access .htaccess terhadap webserver yang kita akses, misalkan kita ingin allow .htaccess di host default apache, maka lakukan 
sudo nano /etc/apache2/sites-available/default
Lalu edit menjadi seperti ini :

     Options Indexes FollowSymLinks MultiViews
     AllowOverride All
     Order allow,deny
     allow from all

Nah jika sudah maka save perubahan lalu restart webserver apache 
sudo service apache2 restart
Lalu untuk mengujinya mari kita buat sebuah file .htaccess di direktory root webserver kita,
Buat folder dengan nama bebas
sudo mkdir /var/www/kun-learning/
Lalu buat file .htaccess 
sudo nano /var/www/kun-learning/.htaccess
Lalu kita buat file index.php di dalam folder yang tadi kita buat
sudo nano /var/www/kun-learning/index.php
Lalu kita buat syntak sederhana di dalam file index.php untuk menampilkan query string yang ada pada url itu  :
Lalu kita kita akan membuat mekanisme overidenya gan, kita sering menggunakan query string yang berada di url seperti ini index.php?id=1, nah fungsinya biasanya untuk id 1 adalah primary key dari sebuah data misalkan product : 
nah dengan htaccess maka kita bisa menggantinya menjadi : product/1
Lalu bagaimana menggantinya, nah kita overide access query string itu dengan .htaccess gan
ketikan syntak ini di file .htaccess agan 
RewriteEngine on
RewriteRule ^product/([^/.]+)$ index.php?id=$1

Nah bisa dilihat itu adalah syntak htaccess untuk mengoveride index.php, walaupun ada banyak syntak htaccess yang bisa kita gunain buat modify url sesuai keinginan kita dan terutama keamanan website kita gan, Oke jika sudah save lalu coba agan buka localhost webserver agan masing-masing.

Misalkan : http://localhostl/kun-learning/product/1

Lalu jika success maka outputnya akan nampak seperti berikut 
array (size=1)
  'id' => string '1' (length=1)

Nah selamat anda berhasil memodifikasi url anda sama seperti framework-framework, horeee

Nah itu gan contoh sederhana penggunaan .htaccess di website, keren kan untuk agan-agan yang ingin lebih dalam mempelajari tentang .htaccess bisa meluncur langsung ke website : apache .htaccess 
atau 
website ke website doc apache .htaccessnya : htaccess documentation

Oke gan sekian artikel dari ane, semoga bermanfaat bagi agan-agan yang membacanya, Terima kasih


See you on next post .. 

    Choose :
  • OR
  • To comment
3 komentar:
Write komentar
  1. ooh, jadi begitu ya gan cara mempercantiknya, kaya fb dan google juga pake sistim kek gitu, pake php dg ?id=xx&op=yy

    BalasHapus
  2. ijin gan.. mau nyoba nih buat blog saya

    BalasHapus
  3. ok sangat bermanfaat sobat, bisa diterapkan untuk blog ya

    BalasHapus