Yii2 Framework ile uygulama geliştirirken linklerin; daha okunabilir olması, daha güzel görünmeleri ve Google aramalarında kullanıcılara daha açıklayıcı bilgiler vermesi (SEO) açısından düzenlememiz gerekmektedir. Normal bir PHP uygulamada bunu .htaccess
dosyasından yaparken Yii2 Framework’te bunu urlManager
componenti ile kolayca yapabilmekteyiz.
Uygulamayı kurup diğer sayfaları gezdiğimizde link yapılarının şu şekilde olduğu dikkatinizi çekmiştir: http://localhost/hello/web/index.php?r=site%2Fabout
. urlManager
kullanarak linklerinizi http://localhost/hello/web/site/about
şeklinde görüntülenmesini sağlayacağız.
config
klasöründe ileride yapacağımız veritabanı ayarlarının yanı sıra web ve konsol uygulamaların için ortam yapılandırmalarını da içerir. Üzerinde çalıştığımız uygulamamıza urlManager
componentini eklemek için /config/web.php
dosyasını editörümüzde açıp aşağıdaki kodları components alanına parametre olarak eklememiz gerekmektedir.
1 2 3 4 5 6 7 8 |
'components' => [ //... 'urlManager' => [ 'showScriptName' => false, 'enablePrettyUrl' => true ], //... 'request' => [ |
Daha sonra /web
klasörünün içerisine .htaccess
adında bir dosya oluşturun ve aşağıdaki kodları içine kopyalayın.
1 2 3 4 5 6 7 |
RewriteEngine on # If a directory or a file exists, use it directly RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # Otherwise forward it to index.php RewriteRule . index.php |
Kullandığınız uygulama geliştirme ortamı (Xamp vs) üzerinde mod_rewrite
özelliğinin aktif olduğundan emin olun.
Tarayıcınızdan http://localhost/hello/web/site/about
adresini ziyaret ettiğinizde About sayfasını sorunsuz görebilmeli ve menüdeki seçeneklere tıkladığınızda artık aynı şekilde bağlantılara sahip olduğunu sağlamalısınız.