YII2. Как развернуть локально сайт?

241
08 июня 2018, 09:10

Пытаюсь развернуть сайт локально, на OpenServer.
Скачал с репозитория сайт на yii2, в котором отсутствовала только папка /vendor.
Докачал эту папку /vendor с основного сайта.
При запуске локально не подключаются все скрипты и стили.
Также в разметке есть только модальные окна, остального контента также нет на главной странице локалки.
т.е. в разметке есть подключение js-скриптов и стилей, но консоль выдаёт 500 ошибку по каждому из подключаемых файлов.

/.htaccess

Options +FollowSymLinks
IndexIgnore */*
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/(web)
RewriteRule ^assets/(.*)$ /web/assets/$1 [L]
RewriteRule ^css/(.*)$ web/css/$1 [L]
RewriteRule ^js/(.*)$ web/js/$1 [L]
RewriteRule ^images/(.*)$ web/images/$1 [L]
RewriteRule (.*) /web/$1
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /web/index.php

/web/.htaccess

RewriteEngine On RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php

/config/web.php

<?php
define('URL_TRANSFORMER_DYNAMIC', 'dinamic');
$skip = array('.', '..');
$modules = [];
$files = scandir(dirname(__FILE__) . '/../modules');
foreach ($files as $file) {
    if (!in_array($file, $skip) && is_dir(dirname(__FILE__) . '/../modules/' . $file)) {
        $modules[$file] = ['class' => 'app\modules\\' . $file . '\Module'];
    }
}   
$config = [
    'id' => 'acms',
    'name' => 'ACMS 9',
    'basePath' => dirname(__DIR__),
    'bootstrap' => ['log'],
    'language' => 'ru',
    'sourceLanguage' => 'ru',
    'modules' => $modules,
    'components' => [
        'request' => [
            // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
            'cookieValidationKey' => '5bdV2clPQw7gpZ-Vt6yI5yNVQMXBZUkw',
            'baseUrl' => '',
            'enableCsrfValidation' => false,
        ],
        'user' => [
            'identityClass' => 'app\modules\admin\models\Admin',
            'class' => 'yii\web\User',
            'enableAutoLogin' => true,
            'loginUrl' => ['admin/auth/login'],
            'idParam' => '__id_admin',
        ],
        'assetManager' => [
            'basePath' => '@webroot/assets',
            'forceCopy' => YII_DEBUG,     
            'baseUrl' => '@web/assets',
        ],
        'image' => [
            'class' => 'app\components\image\ImageComponent',
        ],
        'event' => [
            'class' => 'app\components\Event',
        ],
        'email' => [
            'class' => 'app\components\Email',
        ],
        'errorHandler' => [
            'errorAction' => 'site/error',
        ],
        'urlManager' => [
            'enablePrettyUrl' => true,
            'showScriptName' => false,
            'rules' => [
                'acms' => 'admin/admin/login',
                '<module:\w+>/<controller:\w+>/<action:\w+>' => '<module>/<controller>/<action>',
                '' => 'site/index',
                '<action>' => 'site/<action>'
            ],
        ],
        /*
        'assetManager' => [
            'basePath' => '@webroot/assets',
            'forceCopy' => YII_DEBUG,
            'baseUrl' => '@web/assets',
        ],
        */
        'i18n' => [
            'translations' => [
                'app' => [
                    'class' => 'yii\i18n\PhpMessageSource',
                    'basePath' => '@app/messages',
                    'sourceLanguage' => 'ru',
                    'fileMap' => [
                        'app' => 'app.php',
                    ],
                ],
            ],
        ],
        'db' => require(__DIR__ . '/db.php'),
        'cache' => require(__DIR__ . '/cache.php'),
        // (optionally) you can configure logging
        'log' => [
            'targets' => [
                [
                    'class' => 'yii\log\FileTarget',
                    'logFile' => '@app/runtime/eauth.log',
                    'categories' => ['nodge\eauth\*'],
                    'logVars' => [],
                ],
            ],
        ],
    ],
    'params' => require(__DIR__ . '/params.php'),
];
if (YII_DEBUG) {
    // configuration adjustments for 'dev' environment
    $config['bootstrap'][] = 'debug';
    $config['modules']['debug'] = [
        'class' => 'yii\debug\Module',
        'allowedIPs' => ['*'],
    ];
    $config['bootstrap'][] = 'gii';
    $config['modules']['gii'] = 'yii\gii\Module';
}
return $config;

Подскажите, как правильно настроить локально сайт?

Answer 1

точно не знаю как на yii, но в laravel например папка vendor в репозиторий тоже не закачивается. и это правильно. Просто после установки с репозитория запускаешь в консоли composer update и композер все необходимые дополнения в vendor закачает и даже папку vendor сам создаст, на основе данных в composer.json package.json

READ ALSO
Кодировка параметров SOAP WSDL из PHP

Кодировка параметров SOAP WSDL из PHP

Передаю в SoapClient параметр 123, а в трассировке получаю такой параметр: "MTIz" и из-за этого преобразования весь WSDL не работает!

230
Защита сайта при загрузки фото и видео

Защита сайта при загрузки фото и видео

Есть сайт (на php) на котором я хочу реализовать загрузку/показ фото и видеоК каким мерам безопасности я должен придерживаться и что для этого...

227
Добавление новых задач (cron)

Добавление новых задач (cron)

Подскажите реализацию следующей задачиТребуется выполнение что-то наподобие cron либо же как то добавлять новую крон задачу средствами php на сайт

207
Laravel ошибка в создании нового проекта

Laravel ошибка в создании нового проекта

В чём суть же проблемы я установил laravel,обновил composer и что же я вижу?

176