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
            )
        );

    }

}

social_apartament/Beauty_Life/ と Lovercase の文字を入力すると興味深いエラーが表示されます :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

コントローラーの命名規則を使用する場合に適しています。コントローラーに Beauty_Life ではなく、BeautyLifeController という名前を付けます。

また、Windows を使用している場合は、ファイルの命名に関して問題はありませんが、Linux では問題が発生する可能性があります。

于 2012-10-08T10:12:55.037 に答える