This article provides instructions on how to implement the Zend Framework onto a shared hosting environment. Please note that this guide does not teach you about the Zend Framework itself.
Here are the objectives:
- Hackless install, no custom php.ini or messed up redirection in your .htaccess
- Simple and clean file structure
Installing Zend Framework
Step one: creating a new user
For security reasons, it is best to create a new user account to host the domain. Avoid hosting multiple domains on the same user account at all costs! If a hack compromises your account, all the domains running under that specific username can and will be affected.
Step two: creating a fully hosted domain/subdomain
View the following article which walks you through how to add a fully hosted domain to your panel:
Makes sure to assign the newly created Shell user to the domain when adding it.
Step three: downloading and extracting Zend Framework through a shell (terminal)
- SSH to your user’s home directory.
- In that directory, run the following command:
[server]$ wget https://packages.zendframework.com/releases/ZendFramework-1.12.15/ZendFramework-1.12.15.tar.gz
- View the following page for a full list of available downloads:
- Once downloaded, run the following command to extract the contents into a folder called ‘ZendFramework-1.12.15’:
[server]$ tar -xvf ZendFramework-1.12.15.tar.gz
- Run the following command to remove the original .tar.gz file:
[server]$ rm ZendFramework-1.12.15.tar.gz
Step four: modifying the bash profile
- Using the editor of your choice, open the .bash_profile to edit. For example, you can use the ‘nano’ editor:
[server]$ nano .bash_profile
- Add the following three lines to the end of the file:
PATH=$PATH:$HOME/ZendFramework-1.12.15 export PATH alias zf=$HOME/ZendFramework-1.12.15/bin/zf.sh
- When finished, press CTRL + O on your keyboard.
- You are prompted to save the file.
- Click the Enter button to save.
- Finally, click Ctrl + X to exit 'nano' and return to your shell.
- Use 'nano' again to edit your .bashrc file. Add the following to the bottom of your .bashrc file:
- Disconnect and reconnect to your terminal (SSH) for the profile changes to take effect. You could also run the following command to update it:
[server]$ . ~/.bash_profile
Step five: creating your Zend app
At the terminal (SSH), type the following command (do NOT name your project as a domain name yet):
[server]$ zf create project yourzendapp
A Zend app appears in a new “yourzendapp” folder.
- Run the following command through a terminal (SSH) where “example.com” is your domain:
[server]$ mv example.com example.com_OLD
- Symlink it to the “public” directory of your Zend app where “example.com” is your domain:
[server]$ ln -s yourzendapp/public example.com
- Symlink the Zend library into your zend app:
[server]$ cd yourzendapp/library [server]$ ln -s ../../ZendFramework-1.12.15/library/Zend
- Visit your domain and you should see the default Zend mainpage.