2017-05-07 13 views
0

私は現在のプロジェクトでcomposer updateを実行しました。&は、以前の作業ページでエラーが発生しています。@frontend/views/site/pagesにYii2の仕事に戻ってきました。Yii2サイト/ページ404エラー

私のURLマネージャがある...

'urlManager' => [ 
    'enablePrettyUrl' => true, 
    'showScriptName' => false, 
    'suffix' => '.p2m', // confuses bad guys 
    'rules' => [ 
     '<controller:\w+>/<id:\d+>' => '<controller>/view', 
     '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>', 
     '<controller:\w+>/<action:\w+>' => '<controller>/<action>', 
     '<view:[a-zA-Z0-9-]+>/'=>'site/page', 
    ] 
], 

私のナビゲーションバーでの行の例を...

['label' => 'Some Page', 'url' => ['/site/page', 'view' => 'somepage']], 

URLを生産...

http://example.com/site/page.p2m?view=somepage 

今日までこれはすべて働いた、&私はなぜもはやそれがないの理由を理解しようとしている私の髪を引き裂いている。

TIA、Pedro

答えて

1

おそらくあなたはアクションの名前を混同しましたか?

ActionControllerにactionPage()を表示してください。 actionPage s()を代わりに使用していますか?

また、あなたのコードを美しくすることができます。

actionPage($view) 

はその後、サイト/ページ/ somepageが動作します

'site/page/<view:[\w-]+>' => '<controller>/<action>', 

とURLルールに追加します。

しかし、より良い方法は、PageControllerとすべてのページを別のアクションとして作成することです。

また、.htaccessとhttpd.conf(apacheを使用している場合)またはnginx configを調べて、サーバーが正常に動作していることを確認してください。