我需要使用类似<controller>.<action>
的URL,例如:api.wwwhost.com/index.php?r=人员。顶部
所以,我试着写模式
'urlManager'=>array(
'urlFormat'=>'path',
'showScriptName'=>false,
'caseSensitive'=>false,
'useStrictParsing'=>true,
'rules'=>array(
'<controller:w+>.<action:w+>' => '<controller>/<action>',
),
),
但它不起作用。据我所知,符号"."不包括在"\w+"中。
我的错误在哪里?
对我来说,在"路径"模式('urlFormat'=>'path'
)下,我不能使用index.php?r=people/top
样式的URL。当我处于path
模式时,我的?r=
样式URL都不起作用。你也经历过同样的事情吗?
当我处于"获取"模式('urlFormat'=>'get'
)时,它们会执行,但在获取模式下,URL规则不会被处理,并且默认情况下似乎只对分隔符使用"/"。
当我使用这种风格的URL:时,你的代码确实对我有用
api.wwwhost.com/people.top
设置"路径"模式(即'urlFormat'=>'path'
)时,请确保正确设置.htaccess
文件以使用它(隐藏index.php文件)。有关URL的更多信息,请参阅Yii指南。