Jumat, 02 Oktober 2015

Mengaktifkan Pretty URL YII2

Jika kita sudah mengenal YII2, tentunya kita pernah melihat atau setidaknya tahu tentang Pretty Url. Ya! Pretty Url digunakan agar Url yang dihasilkan menjadi lebih mudah dibaca. Contoh, dari alamat:

http://localhost/basic/web/index.php?r=site/login

menjadi:

http://localhost/basic/web/site/login

Tentunya lebih mudah membaca url yang bawah kan? Nah, sekarang... Bagaimana kita melakukannya?

Pertama, kita buat sebuah file dengan nama .htaccess pada folder web. Jika kita menggunakan YII2 Advanced, kita membuat file .htaccess pada folder web di dalam backend dan juga frontend. Setelah kita membuat file-nya, kemudian kita isi file tersebut dengan script berikut:

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . index.php

Jika sudah, kita buka file web.php yang ada pada folder config. Itu untuk YII2 Basic. Jika kita menggunakan YII2 Advanced, buka file common/config/main-local.php. Lalu pada array components, kita tambahkan script berikut:

'urlManager' => [
  'class' => 'yii\web\UrlManager',
  // Disable index.php
  'showScriptName' => false,
  // Disable r= routes
  'enablePrettyUrl' => true,
  'rules' => array(
    '<controller:\w+>/<id:\d+>' => '<controller>/view',
    '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
    '<controller:\w+>/<action:\w+>' => '<controller>/<action>',
  ),
],
Jika masih bingung meletakkan script di atas, mungkin bisa melihat gambar di bawah:



Setelah itu, simpan dan refresh halaman yii kita. Maka Pretty Url sudah aktif.

Sekian dan terima kasih...

referensi : http://stackoverflow.com/questions/26525320/enable-clean-url-in-yii2

1 komentar:

  1. Maaf sebelumnya tapi kelihatannya hasil copas?.
    Harusnya coba sendiri dan kalau work baru di post, soalnya postnya cuma ada skrinsot codingnya doang gak ada tampilan workingnya. Sangat disayangkan. Semoga diterima kritikannya.

    BalasHapus