TYPO3 v10 has reached end-of-life as of April 30th 2023 and is no longer being maintained. Use the version switcher on the top left of this page to select documentation for a supported version of TYPO3.
Need more time before upgrading? You can purchase Extended Long Term Support (ELTS) for TYPO3 v10 here: TYPO3 ELTS.
Composer is a program that is written in PHP. Instructions for downloading and installing Composer can be found on getcomposer.org.
If the root folder of your project is identical to your web root folder, you
need to change this. Composer will add a
vendor/ folder to your project
root, and if your project root and your web root are identical, this can
be a security issue: files in the
vendor/ folder could be directly
accessible via HTTP request.
$ tree typo3_root ├── index.php ├── fileadmin/ ├── typo3/ ├── typo3conf/ └── typo3temp/
You will need a web root folder in your project. You can find many
tutorials with different names for your web root folder. The truth is:
the name does not matter because we can configure it in the settings in
a later step. We will use
public/ in our example.
$ tree typo3_root └── public/ ├── index.php ├── fileadmin/ ├── typo3/ ├── typo3conf/ └── typo3temp/
If you do not have such a web root directory, you will have to refactor your project before proceeding. Please be aware that you may need to tell your web server about the changed web root folder if necessary.
Your project must have the TYPO3 Core and all installed extensions in their original state. If you applied manual changes to the files, these will be lost during the migration steps.
If you need to apply hotfixes or patches to system extensions or publicly available extensions, this tutorial about applying patches via Composer could help, but requires some advanced steps.