Kullanıcıları web sayfalarını sosyal medya aracılığı ile tanıtmak istediklerinde paylaşım linklerinin daha anlaşılır ve güvenilir olması ya da Google tarafından Seo uyumlu linkler elde etmeleri için Enable pretty URLs
kullanırız.
Örnek olarak:
http://sitename.com/index.php?r=site%2Fabout
http://sitename.com/about
gibi bir URL'ye dönüştürülecektir.
Bunun için yapmamız gerek bir kaç işlem olacak. Öncelikle:
Apache Web server configuration
Eğer Apache kullanıyorsanız yapmanız gerek extra bir kullanım var. .htaccess
kodlarınızın içine aşağıda ki kodları eklemeniz ve bu dosyayı kök dizine koymanız gerekecektir.
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
URL manager configuration
frontend/config/main.php
içide aşağıdaki değişiklikleri yapmalısınız.
'components' => [
// ...
'urlManager' => [
'class' => 'yii\web\UrlManager',
// Hide index.php
'showScriptName' => false,
// Use pretty URLs
'enablePrettyUrl' => true,
'rules' => [
'/'=>'site/index',
'/about'=> 'site/about',
],
],
// ...
],
Eğer bir hata alırsak öncelikle httpd.conf
dosyasından rewrite_module
özelliğini aktif hale getirmemiz gerekecektir. Bunun için C:\wamp\bin\apache\apache2.4.9\conf
ya da C:\xampp\apache\conf
dizinine giderek httpd.conf
dosyasını açıp aşağıda ki satıra gidiyoruz.
#LoadModule rewrite_module modules/mod_rewrite.so
ve # işaretini kaldırarak aşağıda ki gibi değiştiriyoruz.
LoadModule rewrite_module modules/mod_rewrite.so
Bu işlemden sonra sunucunun tekrar dan başlatılması gerekmektedir.