mirror of
				https://github.com/yiisoft/yii2.git
				synced 2025-11-04 14:46:19 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			65 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
Shared Hosting Environment
 | 
						|
==========================
 | 
						|
 | 
						|
Shared hosting environments are often quite limited about configuration and directory structure. Still in most cases
 | 
						|
you can run Yii 2.0 on these.
 | 
						|
 | 
						|
Deploying basic application
 | 
						|
---------------------------
 | 
						|
 | 
						|
Since there's typically only one webroot it is recommended to use basic application template. Refer to
 | 
						|
[Installing Yii chapter](start-installation.md) and install application template locally.
 | 
						|
 | 
						|
### Add extras for webserver
 | 
						|
 | 
						|
If webserver used is Apache you'll need to add `.htaccess` file with the following content to `web`
 | 
						|
(where `index.php` is):
 | 
						|
 | 
						|
```
 | 
						|
Options +FollowSymLinks
 | 
						|
IndexIgnore */*
 | 
						|
 | 
						|
RewriteEngine on
 | 
						|
 | 
						|
# if a directory or a file exists, use it directly
 | 
						|
RewriteCond %{REQUEST_FILENAME} !-f
 | 
						|
RewriteCond %{REQUEST_FILENAME} !-d
 | 
						|
 | 
						|
# otherwise forward it to index.php
 | 
						|
RewriteRule . index.php
 | 
						|
```
 | 
						|
 | 
						|
In case of nginx you should not need any extra config files.
 | 
						|
 | 
						|
### Renaming webroot
 | 
						|
 | 
						|
If after connecting to your shared hosting via FTP or by other means you're seeing something like the following, you're
 | 
						|
most probably lucky.
 | 
						|
 
 | 
						|
```
 | 
						|
config/
 | 
						|
logs/
 | 
						|
www/
 | 
						|
```
 | 
						|
 | 
						|
In the above `www` is webserver directory root (i.e. webroot). It could be named differently. Common names are: `www`,
 | 
						|
`htdocs`, `public_html`. Since we have webroot in our basic application template named `web` we need to rename it to
 | 
						|
whatever hosting webroot is before uploading.
 | 
						|
 | 
						|
### FTP root directory is writeable
 | 
						|
 | 
						|
If you can write to the root level directory i.e. where `config`, `logs` and `www` are, just upload `assets`, `commands`
 | 
						|
etc. as is.
 | 
						|
 | 
						|
### Check requirements
 | 
						|
 | 
						|
In order to run Yii hosting should meet its requirements. The very minimum requirement is PHP 5.4. In order to check
 | 
						|
the rest copy `requirements.php` from root directory into webroot directory and run it via browser using
 | 
						|
`http://example.com/requirements.php` URL. Don't forget to delete the file afterwards.
 | 
						|
 | 
						|
 | 
						|
Deploying advanced application
 | 
						|
------------------------------
 | 
						|
 | 
						|
Deploying advanced application to shared hosting is a bit trickier than doing it with basic application because it has
 | 
						|
two webroots. |