Kebanyakan dari kita pasti mempunyai akun facebook. Siapa sih yang hari gini tidak mempunyai facebook? Di facebook ini, ketika kita masuk ke dalam menu profil, maka yang akakn tampil di kolom URL adalah alamat facebook.com/nama user. Alamat ini unik, karena hanya terdiri dari 2 bagian yaitu nama website dan diikuti dengan nama user.
Jika dibandingkan dengan alamat yang dihasilkan oleh framework codeigniter, alamat yang mungkin adalah nama website/index.php/nama controller. Mungkin sudah banyak yang membahas bagaiman menghilangkan bagian URI index.php dengan menggunakan bantuan .httacces. Tetapi masalahnya adalah nama controller pada bagian URI ini tidak bisa digantikan langsung dengan nama user. Karena nama user sifatnya dinamis, sedangkan nama controller sifatnya adalah statis.
Solusi masalah ini adalah dengan memodifikasi alamat URI yang digunakan pada website. Hal ini dapat disetting pada file routes.php pada folder config. Biasnya pada file routes.php ini yang kita rubah adalah bagianĀ $route[‘default_controller’]. Tapi kali ini yang kita rubah adalah pada bagianĀ $route[‘404_override’]..
Agar nantinya URI website bisa menyerupai URL pada facebook, yang kita rubah adalah dengan:
$route['^(?!home|welcome|about).*'] = "user/nama/$0";
Maksudnya adalah ketika alamat controller yang kita panggil selain home,welcome, dan about yang saya misalkan cakra maka hasil URI nya adalah contoh.com/cakra maka routing yang sebenarnya terjadi adalah terjadi adalah contoh.com/user/nama/cakra. Tetapi jika controller yang kita panggil adalah contoh.com/home maka routing akan tetap merujuk pada controller home. Nilai home|welcome|about ini dapat dirubah sesuai dengan kebutuhan.
Semoga bermanfaat!!
