Caution: This documentation is for eZ Publish legacy, from version 3.x to 5.x.
For 5.x documentation covering Platform see eZ Documentation Center, for difference between legacy and Platform see 5.x Architecture overview.

Directory structure

The eZ Publish root directory contains multiple sub-directories. Each sub-directory is dedicated to a specific part of the system and contains a collection of logically related files. The following table gives an overview of the main eZ Publish directories.




The "bin" directory contains various PHP, Perl and shell scripts. For example, it contains the "ezcache.php" script which can be used to clear all eZ Publish caches from within a system shell. The scripts are mainly used for manual maintenance.


The "cronjobs" directory contains miscellaneous scripts for automated periodical maintenance.


The "design" directory contains all design related files such as templates, images, stylesheets, etc.


The "doc" directory contains documentation and change logs.


The "extension" directory contains eZ Publish plug-ins. The extension system of eZ Publish allows external code to plug in and coexsit with the rest of the system. By using extensions it is possible to create new modules, datatypes, template operators, workflow events and so on.


The "kernel" directory contains all the kernel files such as the core kernel classes, modules, views, datatypes, etc. This is where the core of the system resides. Only experts should tamper with this part.


The "lib" directory contains the general purpose libraries. These libraries are collections of classes that perform various low level tasks. The kernel makes use of these libraries.


The "packages" directory contains the bundled packages (themes, classes, templates, etc.) that can be installed using either the setup wizard or the administration interface.


The "settings" directory contains dynamic, site specific configuration files.


The "share" directory contains static configuration files such as code pages, locale descriptions, translations, icons, etc.


The "support" directory contains the source code for additional applications that can be used to do various advanced tasks. For example, it contains the "lupdate" program that can be used to create and maintain eZ the translation files.


The "update" directory contains various scripts that should be used when an eZ Publish installation is being upgraded.


The "var" directory contains cache files and logs. It also contains actual content that doesn't go into the database (images and files). The size of this directory will most likely increase as the system is being used.

Balazs Halasy (14/09/2010 10:59 am)

Geir Arne Waaler (28/09/2010 8:27 am)


  • database

    Can I recuperate the database content from update's files