隐藏默认控制器名称来自具有参数的URL - Yii

时间:2014-08-21 07:49:42

标签: php yii yii-url-manager

我使用yii网址的路径格式... 我想改变这个网址

  

mypage.com/site/profile/username/name

  

mypage.com/profile/username/name

{site:defaultControler,profile:an Action,username:Argument,name:Argument&value; value }

如何通过yii中的urlManager完成此操作?

1 个答案:

答案 0 :(得分:1)

这对你有用。将此规则/profile/*添加到组件urlManager部分的config.php中。 Params喜欢"用户名"应由Yii自动转发。

    'urlManager'=>array(
        'urlFormat'=>'path',
        'showScriptName' => false,
        'rules'=>array(
            '/profile/*' => array('/site/profile/'),
        ),
    ),

同时检查.htaccess并允许重写。

Options +FollowSymlinks
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