Recommended Project Structure for Zend Framework MVC Applications

Overview

Many developers seek guidance on the best project structure for a Zend Framework project in a relatively flexible environment. A "flexible" environment is one in which the developer can manipulate their file systems and web server configurations as needed to achieve the most ideal project structure to run and secure their application. The default project structure will assume that the developer has such flexibility at their disposal.

The following directory structure is designed to be maximally extensible for complex projects, while providing a simple subset of folder and files for project with simpler requirements. This structure also works without alteration for both modular and non-modular Zend Framework applications. The .htaccess files require URL rewrite functionality in the web server as described in the Rewrite Configuration Guide, also included in this appendix.

It is not the intention that this project structure will support all possible Zend Framework project requirements. The default project profile used by Zend_Tool reflect this project structure, but applications with requirements not supported by this structure should use a custom project profile.


Recommended Project Structure for Zend Framework MVC Applications