Hi. Thank you for releasing Yii3.
I am used to have separated public and private files into two directories: public and private.
I made fresh Yii3 application installation:
cd /path/to/directory
composer create-project yiisoft/app private
cd private
mv public ..
So I have:
> private
>> config
>> src
>> vendor
>> yii
>> (...)
> public
>> index.php
>> (...)
Then I changed config/common/aliases.php to correspond new directory structure.
From this:
return [
'@root' => dirname(__DIR__, 2),
'@src' => '@root/src',
'@assets' => '@root/public/assets',
'@assetsUrl' => '@baseUrl/assets',
'@assetsSource' => '@root/assets',
'@baseUrl' => '/',
'@public' => '@root/public',
'@runtime' => '@root/runtime',
'@vendor' => '@root/vendor',
];
To this:
return [
'@root' => dirname(__DIR__, 3),
'@src' => '@root/private/src',
'@assets' => '@root/public/assets',
'@assetsUrl' => '@baseUrl/assets',
'@assetsSource' => '@root/private/assets',
'@baseUrl' => '/',
'@public' => '@root/public',
'@runtime' => '@root/private/runtime',
'@vendor' => '@root/private/vendor',
];
As suggested in common/configuration.php, I ran command to update merge plan:
composer yii-config-rebuild
Then I started PHP built in server:
APP_ENV=dev ./yii serve --port=8080
And got warning and error:
[WARNING] Default router "public/index.php" does not exist. Serving without router. URLs with dots may fail.
[ERROR] Document root "/path/to/directory/private/public" does not exist.
What am I doing wrong? How to correctly set paths to communicate private and public directories with each other?