2016-04-12 23:54:57 6865次浏览 2条回答 2 悬赏 10 金钱

yii1 yii2 urlManager使用相同的规则,如下:

'urlManager' => [
    'enablePrettyUrl' => true,
    'showScriptName' => false,
    'suffix'=>'.html',
    'rules' => [
        '<controller:\w+>/<id:\d+>'=>'<controller>/view',
        '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
        '<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
    ],
],

yii1中,开户url美化,以下三种访问方法是等效的。

http://local/admin/system.html
http://local/admin/system/
http://local/admin/system
yii2中,开户url美化,仅可使用
http://local/admin/system.html 可访问
http://local/admin/system/ 不可访问
http://local/admin/system 不可访问

请问如何解决yii2中三种访问方法可同时访问页面。

  • 回答于 2016-04-13 09:18 举报

    suffix不要
    rules加多一条

    '<controller:\w+>/<action:\w+>.html'=>'<controller>/<action>',
    
    1 条回复
    回复于 2016-04-14 20:21 回复

    不好使,按你说的改后,只有http://local/admin/system/ 样式可访问

  • 回答于 2016-04-15 09:46 举报
    'urlManager' => [
        'enablePrettyUrl' => true,
        'showScriptName' => false,
        'rules' => [
            '<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
            '<controller:\w+>/<action:\w+>.html'=>'<controller>/<action>',
        ]
    ],
    

    测试过, /site/about//site/about.html 都可以访问

    1 条回复
    回复于 2016-12-06 18:33 回复

    试了这样,不行啊

您需要登录后才可以回答。登录 | 立即注册
wroo
职场新人

wroo

注册时间:2016-03-28
最后登录:2017-11-12
在线时长:4小时42分
  • 粉丝0
  • 金钱25
  • 威望0
  • 积分65

热门问题