Вы правы. Само собой, на хостинге никакого OpenServer'a нет - это почему-то приложение каким-то пока непонятным для меня образом хранит где-то у себя мои локальные пути, будучи при этом уже на хостинге и на другой ОС. По поводу index.php - вот эта запись подозрительна (хотя конфиги находит корректно):
по пути, на который ругается PHP [protected/config/...], а если быть точнее, то 'Application base path' - насколько я понимаю - это параметр basePath в конфиге, то установлен он следующим образом (а чтобы не морочить Вам голову, скину лучше весь конфиг
Код: Выделить всё
// Определяем алиасы:
Yii::setPathOfAlias('application', dirname(__FILE__) . '/../');
Yii::setPathOfAlias('public', dirname($_SERVER['SCRIPT_FILENAME']));
Yii::setPathOfAlias('yupe', dirname(__FILE__) . '/../modules/yupe/');
Yii::setPathOfAlias('vendor', dirname(__FILE__) . '/../../vendor/');
return array(
'basePath' => dirname(__FILE__) . '/..', // ВОТ ЭТОТ ПАРАМЕТР. При echo Yii::app()->basePath выводит полный локальный путь к папке protected, а именно: D:\OpenServer\domains\margo\protected
'defaultController' => 'site', // контроллер по умолчанию
'name' => 'My Test App', // название приложения
'language' => 'ru', // язык по умолчанию
'sourceLanguage' => 'en',
'theme' => 'default', // тема оформления по умолчанию
'charset' => 'UTF-8',
'controllerNamespace' => 'application\controllers',
'preload' => defined('YII_DEBUG')
&& YII_DEBUG
&& is_writable(Yii::getPathOfAlias('application.runtime'))
&& is_writable(Yii::getPathOfAlias('public.assets')),
// ? array('debug') : array(),
'aliases' => array(
'bootstrap' => realpath(Yii::getPathOfAlias('vendor') . '/clevertech/yii-booster/src'),
),
'import' => array(
// подключение основых путей
'application.modules.yupe.models.*',
'application.modules.yupe.widgets.*',
'application.modules.yupe.controllers.*',
'application.modules.yupe.extensions.tagcache.*',
),
// подключение и конфигурирование модулей,
// подробнее: http://www.yiiframework.ru/doc/guide/ru/basics.module
'modules' => array(
'yupe' => array(
'class' => 'application.modules.yupe.YupeModule',
'cache' => true,
),
// на продакшне gii рекомендуется отключить, подробнее: http://www.yiiframework.com/doc/guide/1.1/en/quickstart.first-app
/*'gii' => array(
'class' => 'system.gii.GiiModule',
'password' => 'giiYupe',
'generatorPaths' => array(
'application.modules.yupe.extensions.yupe.gii',
),
'ipFilters'=>array(),
),*/
),
//comment this behaviors if multilingual unnecessary
'behaviors' => array(
'onBeginRequest' => array(
'class' => 'yupe\components\urlManager\LanguageBehavior'
),
),
'params' => require dirname(__FILE__) . '/params.php',
// конфигурирование основных компонентов (подробнее http://www.yiiframework.ru/doc/guide/ru/basics.component)
'components' => array(
'debug' => array(
'class' => 'vendor.zhuravljov.yii2-debug.Yii2Debug',
'internalUrls' => false,
),
// параметры подключения к базе данных, подробнее http://www.yiiframework.ru/doc/guide/ru/database.overview
// используется лишь после установки Юпи:
'db' => file_exists(__DIR__ . '/db.php') ? require_once __DIR__ . '/db.php' : array(),
'bootstrap' => array(
'class' => 'bootstrap.components.Bootstrap',
'responsiveCss' => true,
'fontAwesomeCss' => true,
),
'eventManager' => array(
'class' => 'yupe\components\EventManager'
),
'configManager' => array(
'class' => 'yupe\components\ConfigManager',
),
'moduleManager' => array(
'class' => 'yupe\components\ModuleManager',
),
// Работа с миграциями, обновление БД модулей
'migrator'=>array(
'class'=>'yupe\components\Migrator',
),
// DAO simple wrapper:
'dao' => array(
'class' => 'yupe\components\DAO',
),
'image' => array(
'class' => 'application\modules\yupe\components\image\Image',
),
'uploadManager' => array(
'class' => 'application\modules\yupe\components\UploadManager',
),
'themeManager' => array(
'class' => 'CThemeManager',
'basePath' => dirname(__DIR__) . '/../themes',
),
'cache' => array(
'class' => 'CFileCache',
'behaviors' => array(
'clear' => array(
'class' => 'application.modules.yupe.extensions.tagcache.TaggingCacheBehavior',
),
),
),
// конфигурирование urlManager, подробнее: http://www.yiiframework.ru/doc/guide/ru/topics.url
'urlManager' => array(
'class' => 'yupe\components\urlManager\LangUrlManager', //comment this if if multilingual unnecessary
//'class' => 'CUrlManager', // default yii UrlManager
'languageInPath' => true, //comment this if if multilingual unnecessary
'langParam' => 'language', //comment this if if multilingual unnecessary
'urlFormat' => 'path',
'showScriptName' => false, // чтобы убрать index.php из url, читаем: http://yiiframework.ru/doc/guide/ru/quickstart.apache-nginx-config
'cacheID' => 'cache',
'useStrictParsing' => true,
'rules' => array(
// общие правила
'/' => '/site/index',
// для корректной работы устновщика
'/install/default/<action:\w+>' => '/install/default/<action>',
'/backend' => 'yupe/backend/index',
'/backend/login' => 'user/account/backendlogin',
'/backend/<action:\w+>' => 'yupe/backend/<action>',
'/backend/<module:\w+>/<controller:\w+>' => '<module>/<controller>Backend/index',
'/backend/<module:\w+>/<controller:\w+>/<action:\w+>/<id:\d+>' => '<module>/<controller>Backend/<action>',
'/backend/<module:\w+>/<controller:\w+>/<action:\w+>' => '<module>/<controller>Backend/<action>',
'/gii/<controller:\w+>/<action:\w+>' => 'gii/<controller>/<action>',
'/site/<action:\w+>' => 'site/<action>',
'/debug/<controller:\w+>/<action:\w+>' => 'debug/<controller>/<action>', // Для YiiDebugPanel
)
),
// конфигурируем компонент CHttpRequest для защиты от CSRF атак, подробнее: http://www.yiiframework.ru/doc/guide/ru/topics.security
// РЕКОМЕНДУЕМ УКАЗАТЬ СВОЕ ЗНАЧЕНИЕ ДЛЯ ПАРАМЕТРА "csrfTokenName"
// базовый класс CHttpRequest переопределен для загрузки файлов через ajax, подробнее: http://www.yiiframework.com/forum/index.php/topic/8689-disable-csrf-verification-per-controller-action/
'request' => array(
'class' => 'yupe\components\HttpRequest',
'enableCsrfValidation' => true,
'enableCookieValidation' => true,
'csrfCookie' => array(
'httpOnly' => true,
),
'csrfTokenName' => 'MY_TKNNAME',
'noCsrfValidationRoutes' => array('backend/image/image/AjaxImageUpload','backend/AjaxFileUpload'),
'enableCookieValidation' => true, // подробнее: http://www.yiiframework.com/doc/guide/1.1/ru/topics.security#sec-4
),
'session' => array(
'cookieParams' => array(
'httponly' => true,
)
),
// подключение компонента для генерации ajax-ответов
'ajax' => array(
'class' => 'yupe\components\AsyncResponse',
),
// параметры логирования, подробнее http://www.yiiframework.ru/doc/guide/ru/topics.logging
'log' => array(
'class' => 'CLogRouter',
'routes' => array(
array(
'class' => 'CFileLogRoute',
'levels' => 'error, warning, info, trace', // на продакшн лучше оставить error, warning
),
),
),
'errorHandler'=>array(
// use 'site/error' action to display errors
'errorAction'=>'site/error',
),
),
'rules' => array(
//подробнее http://yupe.ru/docs/yupe/userspace.config.html
)
);