Yii 2.0: How to install Yii 2 advanced on a shared hosting environment

2 followers

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:

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.)

Total 1 comment

#19648 report it
jacmoe at 2015/11/03 12:17pm
Works on Dreamhost

On Dreamhost you can set the webroot too. I usually put the backend on a subdomain - admin.host.name - so it is possible :)

Leave a comment

Please to leave your comment.