Фреймворк Yii — менеджер URL-адресов и правила маршрутизации

#php #yii #yii-routing

#php #yii #yii-маршрутизация

Вопрос:

У меня есть эти правила маршрутизации по умолчанию в моем urlManager в Yii framework:

 'urlManager'=>array(
    'urlFormat'=>'path',
    'showScriptName'=>false,
    'rules'=>array(
        '<controller:w >/<id:d >'=>'<controller>/view',
        '<controller:w >/<action:w >/<id:d >'=>'<controller>/<action>',
        '<controller:w >/<action:w >'=>'<controller>/<action>',
    ),
),
  

У меня есть SiteController.php для всех /site/ запросов. То, что мне нужно сейчас
заключается в перенаправлении /home запроса на /site/index .

Я попытался добавить этот элемент массива:

 'home' => '/site/index',
'/home' => 'site/index',
  

И ни одно из них не сработало.

Кто-нибудь может решить эту проблему?

Ответ №1:

Просто удалите лишние косые черты ‘/’. Это сработало у меня, когда я только что протестировал его:

 'home' => 'site/index',
  

Я надеюсь, что это поможет.

Ответ №2:

 'urlManager'=>array(
        'urlFormat'=>'path',
             'useStrictParsing'=>true,
        'rules'=>array(
                          '' => 'site/index',
                            'Home'=>'site/index',
  

первый будет показывать empty вместо home.
второй будет показывать Home вместо site / index