0

当我尝试使用 urlManager 在 Yii 中重写我的 URL 时,我收到了 HTTP 404 错误。

这是我在 main.php 配置文件中尝试过的两种配置格式,一种类似'pattern1'=>'route1',另一种采用新格式array('route1', 'pattern'=>'pattern1')

'urlManager' => array(
            'urlFormat' => 'path',
            'rules' => array(
                'messageBulk'=>'message/apiBulk'
            ),
        ),

'urlManager' => array(
                'urlFormat' => 'path',
                'rules' => array(
                    array('message/apiBulk', 'pattern'=>'messageBulk')
                ),
            ),
4

2 回答 2

0

您希望生成什么样的网址?因为我对你在那里的配置有点困惑。无论如何,这是我用于项目的模板:

'urlManager'=>array(
        'urlFormat'=>'path',
        'rules'=>array(
             // REST patterns
            array('api/list', 'pattern'=>'api/v1/<model:\w+>', 'verb'=>'GET'),
            array('api/view', 'pattern'=>'api/v1/<model:\w+>/check', 'verb'=>'GET'),
            array('api/view', 'pattern'=>'api/v1/<model:\w+>/<id:\d+>', 'verb'=>'GET'),
            array('api/create', 'pattern'=>'api/v1/<model:\w+>', 'verb'=>'POST'),

            '<controller:\w+>/<id:\d+>/'=>'<controller>/view',
            '<controller:\w+>/<action:\w+>/<id:\d+>/*'=>'<controller>/<action>',
            '<controller:\w+>/<action:\w+>/*'=>'<controller>/<action>',
            '<controller:\w+>/<action:\w+>/'=>'<controller>/<action>',
            '<module:\w+>/<controller:\w+>/<action:\w+>/'=>'<module>/<controller>/<action>',
        ),
        //'showScriptName'=>false,
    ),

我希望它可以帮助你。

于 2013-07-26T16:23:25.263 回答
0

写错了 URL,缺少“index.php”。答案在@ernie 的评论中。

什么是调试面板显示?您尝试使用您的规则访问哪个 URL?您的 yourwebsite.com/index.php/message/apiBulk 工作吗?

于 2013-09-13T19:56:25.717 回答