资产Yii2 debian

时间:2018-06-14 01:08:58

标签: php yii2 debian assets

该网站适用于Windows,当我放入debian时它不起作用。

dir debian:/ var / www / html / basicx /

我该怎么做才能解决这个问题?

显示此消息:

    Invalid Configuration – yii\base\InvalidConfigException

    The directory is not writable by the Web process: /var/www/html/basicx/web/assets
    1. in /var/www/html/basicx/vendor/yiisoft/yii2/web/AssetManager.php at line 215
    206207208209210211212213214215216217218219220221222223224     * @throws InvalidConfigException if [[basePath]] is invalid
         */
        public function init()
        {
            parent::init();
            $this->basePath = Yii::getAlias($this->basePath);
            if (!is_dir($this->basePath)) {
                throw new InvalidConfigException("The directory does not exist: {$this->basePath}");
            } elseif (!is_writable($this->basePath)) {
                throw new InvalidConfigException("The directory is not writable by the Web process: {$this->basePath}");
            }

            $this->basePath = realpath($this->basePath);
            $this->baseUrl = rtrim(Yii::getAlias($this->baseUrl), '/');
        }

        /**
         * Returns the named asset bundle.
         *
    2. in /var/www/html/basicx/vendor/yiisoft/yii2/base/BaseObject.php at line 108 – yii\web\AssetManager::init()
    3. yii\base\BaseObject::__construct([])
    4. in /var/www/html/basicx/vendor/yiisoft/yii2/di/Container.php at line 375 – ReflectionClass::newInstanceArgs([[]])
    5. in /var/www/html/basicx/vendor/yiisoft/yii2/di/Container.php at line 156 – yii\di\Container::build('yii\web\AssetManager', [], [])
    6. in /var/www/html/basicx/vendor/yiisoft/yii2/BaseYii.php at line 349 – yii\di\Container::get('yii\web\AssetManager', [], [])
    7. in /var/www/html/basicx/vendor/yiisoft/yii2/di/ServiceLocator.php at line 137 – yii\BaseYii::createObject(['class' => 'yii\web\AssetManager'])
    8. in /var/www/html/basicx/vendor/yiisoft/yii2/base/Module.php at line 724 – yii\di\ServiceLocator::get('assetManager', true)
    9. in /var/www/html/basicx/vendor/yiisoft/yii2/base/Application.php at line 608 – yii\base\Module::get('assetManager')
    10. in /var/www/html/basicx/vendor/yiisoft/yii2/web/View.php at line 225 – yii\base\Application::getAssetManager()
    11. in /var/www/html/basicx/vendor/yiisoft/yii2/web/View.php at line 285 – yii\web\View::getAssetManager()
    12. in /var/www/html/basicx/vendor/yiisoft/yii2/web/AssetBundle.php at line 125 – yii\web\View::registerAssetBundle('app\assets\PyChronoAsset')
    13. in /var/www/html/basicx/views/layouts/main.php at line 15 – yii\web\AssetBundle::register(yii\web\View)
    9101112131415161718192021use yii\bootstrap\Nav;

    use yii\bootstrap\NavBar;
    use yii\helpers\Url;
    use yii\widgets\Breadcrumbs;
    use app\assets\PyChronoAsset;

    PyChronoAsset::register($this);
    ?>
    <?php $this->beginPage() ?>
    <!DOCTYPE html>
    <html lang="<?= Yii::$app->language ?>">
    <head>
        <meta charset="<?= Yii::$app->charset ?>">

14. in /var/www/html/basicx/vendor/yiisoft/yii2/base/View.php at line 332 – require('/var/www/html/basicx/views/layou...')
15. in /var/www/html/basicx/vendor/yiisoft/yii2/base/View.php at line 250 – yii\base\View::renderPhpFile('/var/www/html/basicx/views/layou...', ['content' => ' <div class="site-about"> ...'])
16. in /var/www/html/basicx/vendor/yiisoft/yii2/base/Controller.php at line 399 – yii\base\View::renderFile('/var/www/html/basicx/views/layou...', ['content' => ' <div class="site-about"> ...'], app\controllers\SiteController)
17. in /var/www/html/basicx/vendor/yiisoft/yii2/base/Controller.php at line 385 – yii\base\Controller::renderContent(' <div class="site-about"> ...')
18. in /var/www/html/basicx/controllers/SiteController.php at line 65 – yii\base\Controller::render('index')
59606162636465666768697071     * Displays homepage.

     *
     * @return string
     */
    public function actionIndex()
    {
        return $this->render('index');
    }

    public function actionPychrono()
    {
        $this->layout = 'main';
        return $this->render('pychrono');

19. app\controllers\SiteController::actionIndex()
20. in /var/www/html/basicx/vendor/yiisoft/yii2/base/InlineAction.php at line 57 – call_user_func_array([app\controllers\SiteController, 'actionIndex'], [])
21. in /var/www/html/basicx/vendor/yiisoft/yii2/base/Controller.php at line 157 – yii\base\InlineAction::runWithParams([])
22. in /var/www/html/basicx/vendor/yiisoft/yii2/base/Module.php at line 528 – yii\base\Controller::runAction('', [])
23. in /var/www/html/basicx/vendor/yiisoft/yii2/web/Application.php at line 103 – yii\base\Module::runAction('', [])
24. in /var/www/html/basicx/vendor/yiisoft/yii2/base/Application.php at line 386 – yii\web\Application::handleRequest(yii\web\Request)
25. in /var/www/html/basicx/web/index.php at line 12 – yii\base\Application::run()
6789101112 
require __DIR__ . '/../vendor/autoload.php';
require __DIR__ . '/../vendor/yiisoft/yii2/Yii.php';


    $config = require __DIR__ . '/../config/web.php';

    (new yii\web\Application($config))->run();

1 个答案:

答案 0 :(得分:0)

确保web进程可以写入assets目录 要么在应用程序的根目录中运行init脚本,要么手动更改权限

chmod 777 /var/www/html/basicx/web/assets

(这需要在您的服务器上完成)