2017-05-07 1 views
0

Après quelques semaines de pause pour d'autres engagements, je suis revenu à mon travail Yii2, a couru composer update sur mes projets en cours, & obtiens 404 erreurs sur toutes les pages de travail précédemment en @frontend/views/site/pages.Yii2 site/page 404 erreur

Mon manager URL est ...

'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', 
    ] 
], 

Un exemple de la ligne de mon Navbar est ...

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

La production de l'URL ...

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

Avant aujourd'hui, tout cela a fonctionné, je suis en train de me déchirer les cheveux en essayant de comprendre pourquoi il ne le fait plus.

TIA, Pedro

Répondre

1

Peut-être que vous avez confondu les noms de l'action?

Veuillez montrer votre actionPage() dans SiteController. Peut-être avez-vous actionPage s() à la place?

Vous pouvez également embellir votre code.

actionPage($view) 

Puis ajouter des règles

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

Site Url/page/somepage fonctionnera.

Mais mieux vaut faire PageController et chaque page en tant qu'action distincte.

Vérifiez également vos fichiers .htaccess et httpd.conf (si vous utilisez apache) ou nginx config pour vous assurer que le serveur fonctionne correctement.