Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Yii2 配置urlManager yii,如facebook_Yii2_Yii Url Manager - Fatal编程技术网

Yii2 配置urlManager yii,如facebook

Yii2 配置urlManager yii,如facebook,yii2,yii-url-manager,Yii2,Yii Url Manager,我想告诉你这个地址 我只想在地址中显示用户名 '{username}'=>'site/user<username:{username}>' “{username}”=>“站点/用户” “urlManager”=>[ 'showScriptName' => false, 'enablePrettyUrl' => true, 'rules' => [

我想告诉你这个地址 我只想在地址中显示用户名

            '{username}'=>'site/user<username:{username}>' 
“{username}”=>“站点/用户”
“urlManager”=>[

    'showScriptName' => false,  

    'enablePrettyUrl' => true,   


    'rules' =>

        [

            '{username}'=>'site/user<username:{username}>',


        ]
        ,
],
'showScriptName'=>错误,
“enablePrettyUrl”=>true,
“规则”=>
[
“{username}”=>“站点/用户”,
]
,
],
怎么做?

试试这个

'urlManager' => [
    'enablePrettyUrl'=>true,
    'showScriptName'=>false,
    ....
    'rules' => [
         '<username:[a-zA-Z0-9_ -]+>' => 'site/user',
          ....
    ],
]
'urlManager'=>[
“enablePrettyUrl”=>true,
'showScriptName'=>false,
....
“规则”=>[
''=>'站点/用户',
....
],
]

您的解决方案对我有效。。。但这现在不起作用“”=>“site/”这是因为所有请求都被视为actionUser的请求。您应该更改url规则,如下所示:'rules'=>['user/'=>'site/user',''=>'site/']。如果您转到example.com/user/my_user_name,您将获得actionUser()。如果您转到example.com/otheraction,您将在SiteController中获得actionOtheraction。但是,如果您有其他控制器,则应更改配置中的规则以允许所有控制器。