2016-04-05 14 views
1

Webfrontend - localhost (Verzeichnis apache2/htdocs in der LAMP), Webbackend - localhost: 8080/backend (apache2/htdocs/backend). Yii erweiterte Anwendung im selben Verzeichnis mit htdocs - mafia-yii (apache2/mafia-yii). Datei main.php in backend/config:kann keine URLs vom Backend zum Frontend konfigurieren. Yii2

'components' => [ 
    .... 
    'urlManager' => [ 
     // here is your normal backend url manager config 
     'class' => 'yii\web\UrlManager', 
     'baseUrl' => 'http://localhost/backend', 
    ], 
    'urlManagerFrontend' => [ 
     'class' => 'yii\web\UrlManager', 
     'hostInfo' => 'http://localhost', 
     'baseUrl' => 'http://localhost', 
    ], 

], 

Datei ~/lampstack-7.0.4-0/apache2/Mafia-yii/backend/Ansichten/Layouts/main.php:

.... 
$menuItems[] = ['label' => 'Backend', 'url' => ['/site/index']]; 
$menuItems[] = ['label' => 'Fronend', 'url' => [Yii::$app->urlManagerFrontend->createUrl('/site/index')]]; 
.... 

Ergebnis: http://localhost:8080/backend/index.php?r=backend%2Findex.php%3Fr%3Dsite%252Findex

nicht gefunden (# 404)

Antwort

0

ich das Problem lösen. Denn:

$var[] = Yii::getAlias('@webroot'); 
$var[] = Yii::getAlias('@web'); 
\yii\helpers\VarDumper::dump($var); 

kehrt: [0 => '/home/kira/lampstack-7.0.4-0/apache2/htdocs/backend' 1 => '/ backend']

Die Lösung ist: $ menuItems [] = ['label' => 'Frontend', 'url' => '@web /../'];

0

Versuchen Sie den folgenden Code zu verwenden:

use yii\helpers\Url; 

$menuItems[] = ['label' => 'Fronend', 'url' => Url::to(Yii::getAlias('@web') . '/site/index', true)]; 
+0

Ergebnis: http: // localhost: 8080/backend/site/Index nicht gefunden (# 404) es als @Web gibt - "/ backend" –

+0

Dann versuchen Sie es Yii :: $ App zu nutzen -> urlManagerFrontend-> createUrl ('/ site/index') nach 'urlManagerFrontend' => [ 'class' => 'yii \ web \ URLManager', 'hostInfo' => 'http: // localhost', 'baseUrl' => '', ], Konfiguration statt Url :: to ( – Taras

0

Haben Sie versucht, mit:

'components' => [ 
    .... 
    'urlManager' => [ 
     // here is your normal backend url manager config 
     'class' => 'yii\web\UrlManager', 
     'baseUrl' => '/backend', 
    ], 
    'urlManagerFrontend' => [ 
     'class' => 'yii\web\UrlManager', 
     'hostInfo' => 'http://localhost', 
     'baseUrl' => '', 
    ], 

], 
+0

ja - das gleiche Ergebnis –

Verwandte Themen