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