TYPO3 Directory Structure
TYPO3
Show in appDescription
A Composer based TYPO3 installation uses a clearly defined directory layout that separates the public web root, private configuration, vendor packages, and temporary files. Integrators need to know which directories serve which purpose, which must be publicly accessible, and which must never be exposed via the web server.
Goals
- I know the purpose and location of the config/ directory and its subdirectories config/system/ and config/sites/.
- I know what the public/ directory contains and why the web server root must point to it.
- I know the role of public/fileadmin/ as the default editor file storage and why frontend layout files should not be stored there.
- I know what public/_assets/ contains and why it must not be manually modified or synchronized from production to development.
- I know that only the Resources/Public/ subdirectories within all extensions are made publicly accessible as a symlink to the public/_assets/ folder. This prevents access to private files (templates, PHP files).
- I know that the symlink is only created if the resources/public/ folder was present before executing "composer require" or "composer install".
- I know how to create missing symlinks afterwards.
- I know the purpose of the var/ directory and why it must not be deleted in its entirety.
- I know how the vendor/ directory is managed by Composer and why custom extensions must not be placed there manually.
Maintainer
Oliver Thiele
Web Development Oliver Thiele