Ich habe gerade meine yii erweiterte Projekt auf meinem Centos-Server hochgeladen, aber ich kann nicht scheinen, über die Migrationsphase zu kommen. Wenn ich versuche, yii Migration der folgende Fehler zu laufen aufgetreten:Einstellung unbekannte Eigenschaft: yii console ErrorHandler :: errorAction auf Linux-Server
'Einstellen unbekannte Eigenschaft: yii \ Konsole \ Fehlerbehandler :: erroraction‘
Ich habe keine Ahnung, warum dies geschieht, weil es gut funktioniert, wenn ich es laufen lokal auf meinem Windows-Computer.
Mein yii Vorprojekt ist etwas anders als ein normaler Yii fortgeschritten. Das Backend wurde vom Frontend getrennt, so dass es nur das Konsolen- und das Frontend-Verzeichnis enthält.
common/config/main.php
$config = require(__DIR__ . '/main-console.php');
array_push($config['bootstrap'], 'site');
$config['components']['errorHandler'] = [
'errorAction' => 'site/error',
];
$config['components']['user'] = [
'identityClass' => 'frontend\models\User',
'enableAutoLogin' => true,
];
$config['components']['session'] = [
'name' => 'PHPFRONTSESSID',
'savePath' => sys_get_temp_dir(),
];
$config['components']['request'] = [
'cookieValidationKey' => 'IBzCJMjLWUaXMZemYUej',
'csrfParam' => '_frontendCSRF',
];
$config['components']['site'] = [
'class' => 'frontend\components\SiteComponent',
];
return $config;
Haupt console.php
$params = array_merge(
require(__DIR__ . '/params.php')
);
return [
'id' => 'app-frontend',
'basePath' => dirname(__DIR__),
'bootstrap' => ['log','debug'],
'sourceLanguage' => 'en-US',
'controllerNamespace' => 'frontend\controllers',
'aliases' => [
'@local_media' => '@frontend/web/uploads/media',
],
'modules' => [
'debug' => [
'class' => 'yii\debug\Module',
],
],
'components' => [
'cache' => [
'class' => 'yii\caching\FileCache',
],
'i18n' => [
'translations' => [
'app*' => [
'class' => 'yii\i18n\PhpMessageSource',
'basePath' => '@frontend/messages',
],
],
],
'assetManager' => [
'bundles' => false,
],
'mailer' => [
'class' => 'yii\swiftmailer\Mailer',
],
'log' => [
'traceLevel' => YII_DEBUG ? 3 : 0,
'targets' => [
[
'class' => 'yii\log\FileTarget',
'levels' => ['error', 'warning', 'trace'],
],
],
],
'defaultRoute' => 'site/view',
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => true,
'enableStrictParsing' => false,
'rules' => require('routes.php'),
],
],
'params' => $params,
];
Kann jemand geben Sie mir einige advies, wie dieses Problem zu lösen?
Ah, danke. Ich hatte main.php in yii.php entfernt und nur die main-console.php enthalten, aber es scheint, dass die main.php auch an anderer Stelle aufgerufen wird (weiß nicht wo). Ich habe Ihren Rat befolgt und eine separate Konfigurationsdatei erstellt. Ich habe auch darauf geachtet, dass es nur in frontend/web/index.php aufgerufen wird. – Toricima
Standardmäßig ist 'common/main.php' immer in' yii' Datei vor anderen Anwendungen main.php configs angehängt. Ich habe ein Hosting mit Caching PHP-Dateien, mein Sie haben das gleiche Problem. – SiZE