Mustafa Hayri ÜNEŞİ |Yii2 - Url Manager

Url-Manager

Url manager, Yii2'nin url sınıfıdır.  Koskoca sınıf şimdi tüm fonksiyonlarına girecek olursak çıkamayız :) Şuan sadece Yii2 yi ilk kurduğunuzda linkler, 'yourdomain.com/backend/web/index.php?r=site/login'    bu şekildedir. Bu class' a ait bir kaç ayar yapacağız. Aşağıda anlattığım adımları takip ederseniz. index.php ve r= kaldırabilir ve url leriniz aşağıdaki gibi olabilir. 'yourdomain.com/backend/web/site/login'

Yii2-Basic için,

1. config/web.php dosyasına ekleyin,

'urlManager' => [
    'enablePrettyUrl' => true,
    'showScriptName' => false,     
    'rules' => [
    ],
],

'enablePrettyUrl'=> true, satırı 'r=' yi kaldırır. 'showScriptName' => false, satırı ise index.php yi kaldırır. 2. web klasörünüzdeki .htaccess dosyasına aşağıdaki satırı ekleyin,

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

Ve Artık hazır :)

Yii2-Advanced için,

1. common/config/main.php dosyasına ekleyin,

'urlManager' => [
    'enablePrettyUrl' => true,
    'showScriptName' => false,     
    'rules' => [
    ],
],

'enablePrettyUrl'=> true, satırı 'r=' yi kaldırır. 'showScriptName' => false, satırı ise index.php yi kaldırır. 2. backend/web/ klasörünüzdeki ve frontend/web klasörünüzdeki .htaccess  dosyalarına aşağıdaki satırı ekleyin,

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 leriniz artık daha güzel :) Bool projeli günler :)