how to develop multiple yii3 apps in the same folder just like yii2 advance demo
yes, this site was developed by Yii3
if you want to develop multiple yii3 apps in the same folder,just like yii2 advance demo
we have a solution
the idea is filter the url accessed to the different app(instance) and load different config files
1. move the yii3 demo config files to a subfolder of config ,maybe frontend
if you want to add backend just copy frontend files to backend
if you need the app frontend and backend ,the config should includ 2 subfolders
config/frontend, config/backend
and modify the .merge-plan.php file in each app config folder
from
return [
'/' => [
to
return [
'/frontend (or othe app name)' => [
make sure it can load the right vender libs
2.modify the public/index.php to forward access to the different apps,
such as https://www.tianexcom/backend to load config/backend config files,
$request_uri = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
$_ENV['YII_ENV'] = '/frontend';
if (!empty($request_uri)) {
if (str_starts_with($request_uri, '/backend')) {
$_ENV['YII_ENV'] = '/backend';
}
}
to do this, you also need to mody the
vendor\yiisoft\yii-runner\src\ApplicationRunner.php protected function createDefaultConfig(): Config
{
return ConfigFactory::create(new ConfigPaths($this->rootPath, 'config'.$this->environment), $this->environment);
}
No Comments