2017-08-07 2 views
0

J'ai cloné notre dépôt et créé exactement les mêmes règles d'URL comme dans mon propre projet. Maintenant, je vais obtenir erreur comme celui-ci, après avoir identifié:URL-Manager ne va pas router

Firefox: 
Fehler: Umleitungsfehler 
The website called is rerouting request,which never will come to an end. 
This problem sometimes occures, if cookies are deactivated 

Chrome: 
ERR_TOO_MANY_REDIRECTS 

Je definetly acceptés en utilisant des cookies à la fois navigateur !! Le débogage me montre que j'ai une douzaine de requêtes 302, donc Yii tombe en panne! J'utilise Windows, pas LINUX, donc je ne me soucie pas des permissions. Voici les règles:

'urlManager' => [ 
 
       'class' => 'yii\web\UrlManager', 
 
       'enablePrettyUrl' => true, 
 
       'showScriptName' => true, 
 
       'enableStrictParsing' => true, 
 
       'rules' => [ 
 
        '/' => 'site/login', 
 
        'home' => 'site/index', 
 
        'logout' => 'site/logout', 
 
        'contact' => 'site/contact', 
 
        'signup' => 'site/signup', 
 
        'reset' => 'site/request-password-reset', 
 
        '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>', 
 
        '<action:(contact|captcha)>' => 'site/<action>' 
 
       ],

Voici la configuration frontend:

<?php 
 

 
$config = [ 
 
    // LZA 17-07-30 
 
    'sourceLanguage' => 'de-DE', 
 
    'language' => 'de-DE', 
 
    // LZA 17-07-30 siehe Funktionen in http://demos.krajee.com/grid#module  
 
    'components' => [ 
 
     'request' => [ 
 
      // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation 
 
      'cookieValidationKey' => '4lD2RxDNkC4ckpwxTmkDzOLIvk0JMs3F', 
 
     ], 
 
    ], 
 
]; 
 

 
if (!YII_ENV_TEST) { 
 
    // configuration adjustments for 'dev' environment 
 
    $config['bootstrap'][] = 'debug'; 
 
    $config['modules']['debug'] = [ 
 
     'class' => 'yii\debug\Module', 
 
    ]; 
 

 
    $config['bootstrap'][] = 'gii'; 
 
    $config['modules']['gii'] = [ 
 
     'class' => 'yii\gii\Module', 
 
     // LZA 17-07-30 CRUD 
 
     'generators' => [// customized CRUD generator 
 
      'crud' => [ 
 
       // 'class' => 'app\myCrud\crud\Generator', // LZA 17-07-20 die Klasse von CRUD generator 
 
       'class' => '\common\wsl_dev\wsl_crud\crud\Generator', // LZA 17-07-20 die Klasse von CRUD generator 
 
       'templates' => [ 
 
        'myCrud' => '/@common/wsl_dev/wsl_crud/crud/default', //LZA 17-07-20 Templatename und Templatepfad 
 
       ] 
 
      ] 
 
     ], 
 
      // LZA 17-07-30 CRUD   
 
    ]; 
 
} 
 

 
return $config;

Si je deacitvate URLManger, la mise

'enablePrettyUrl' => false, 

tout fonctionne bien. Si je mets manuellement Url comme ceci:

http://localhost/yii2_perswitch/frontend/web/yiic.php/home 

tout fonctionne bien, trop

Toutes les idées, comment résoudre ce problème? J'ai supprimé tous mes cookies, sans aucun effet!

Répondre

0

Solution 1:

Activer le mode de débogage web/index.php (décommentez ces deux lignes):

defined('YII_DEBUG') or define('YII_DEBUG', true); 
defined('YII_ENV') or define('YII_ENV', 'dev'); 

et vous pouvez voir exactement ce qui cause le problème.

Redirigé erreur trop de fois était parce que les 777 autorisations pour le dossier d'exécution et les actifs ne sont pas réglés.

Solution 2:

Je pense que le problème est lié avec le chemin ou le domaine du cookie. Je crois que cette information pourrait être utile.

https://github.com/samdark/yii2-cookbook/blob/master/book/cookies.md

+0

j'utiliser Windows, donc je ne ont pas besoin d'aucune autorisation. Les cookies sont définis dans les deux, frontend et backend (voir ci-dessus) – tklustig