I've read many comments that it's not possible to install Yii 2 advanced on a shared hosting environment, as it has two webroots. This is partially true.
In this tutorial I'm going to demonstrate how to install Yii 2 advanced on GODADDY shared hosting. Why GODADDY? In GODADDY it's possible to set the document root of the subdomains and addon domains above the public_html folder. In other hostings this trick might not work. For example, in Resellerclub hosting I tried to set the document root above the public_html folder but I didn't succeed.
My website is in Yii 1, which is hosted on Godaddy shared hosting. I've also installed Yii 2 advanced. Look:
- Main domain: http://oligalma.com
- Yii 2 frontend: http://yii2advanced.oligalma.com
- Yii 2 backend: http://admin.yii2advanced.oligalma.com
Take note that, in this example, I installed Yii 2 advanced frontend on a subdomain (in order not to buy a new domain). But you can install Yii 2 advanced on a domain as well.
How to achieve this? Well, we just need to create a folder on the /home/myself directory called, for example, sites. Then we upload the Yii 2 advanced files on /home/myself/sites/yii2advanced (you can give the directory any name you want). Then, using the Godaddy cPanel, we create 2 subdomains:
- yii2advanced.oligalma.com ---> /home/myself/sites/yii2advanced/frontend/web
- admin.yii2advanced.oligalma.com ---> /home/myself/sites/yii2advanced/backend/web
home ├── myself ├── public_html ├── sites ├── yii2advanced ├── frontend ├── web ├── backend ├── web
Finally, you may need to adjust the A records of your main domain.
And that's all!!
(You can create the sites folder if you plan to put several domains/subdomains there. If not, you can just put the yii2advanced folder directly in /home/myself)
If you want to install Yii 2 on a domain instead of a subdomain you need to purchase a deluxe plan https://www.godaddy.com/hosting/web-hosting, which allows you to have multiple sites (and therefore create addon domains).
It's important to note that we don't use the public_html folder to install the Yii 2 advanced. If you want you can install any website there that doesn't need to set the document root (Joomla, Wordpress, Yii 1, etc.)