2

我的控制器有问题

我在 Windows 上使用服务器,一切正常,但在互联网上我试图访问页面 social_apartament/beauty_life/ 并且找不到页面,代码错误 404 这里是一些关于错误的信息

            [code] => 404
            [type] => CHttpException
            [errorCode] => 0
            [message] => Unable to resolve the request "beauty_life".
            [file] => /home1/moldovaj/public_html/testit/YiiRoot/framework/web/CWebApplication.php
            [line] => 287
            [trace] => #0 /home1/moldovaj/public_html/testit/YiiRoot/framework/web/CWebApplication.php(142): CWebApplication->runController('beauty_life')
#1 /home1/moldovaj/public_html/testit/YiiRoot/framework/base/CApplication.php(162): CWebApplication->processRequest()
#2 /home1/moldovaj/public_html/testit/www.social_apartament/index.php(13): CApplication->run()
#3 {main}

服务器上的结构是这样的:

控制器/Beauty_LifeController.php 视图/beauty_life/index.php

控制器 Beauty_LifeController 是这样的:

    <?php

class Beauty_LifeController extends Controller
{


    public function actionIndex()
    {


....

        $this->render('index',
            array(
                'models'=>$models,
                'pages' => $pages,
                'archive' => $archive,
                'monthNames'=>$monthNames
            )
        );

    }

}

当我用 Lovercase 字母输入 social_apartament/Beauty_Life/ 时很有趣,我给出了一个错误:CException - Beauty_LifeController cannot find the requested view "index".,奇怪的是主机服务器是http://hostmonster.com的问题,如果它有帮助,谢谢你的帮助!

4

3 回答 3

7

windows 不区分大小写,但 linux 不区分大小写。将中的L设为 小写Beauty_Life

您必须更改类名和文件名。

于 2012-10-08T10:07:40.757 回答
2

Controller = BeautyLife 并且您尝试获得 beautylife,您必须使用大写 B 和 L 请求才能获得正确的控制器。

看到这个链接:“http://hugoware.net/blog/ignoring-case-with-mono-mvc”

于 2012-10-08T10:11:08.057 回答
1

如果您使用控制器命名约定会更好。将控制器命名为 BeautyLifeController 而不是 Beauty_Life。

而且,如果您使用的是 Windows,则文件命名不会有任何问题,但 linux 可能会有。

于 2012-10-08T10:12:55.037 回答