Discover Easy TYPO3 CMS Setup on Debian 12

This guide will teach you TYPO3 CMS Setup on Debian 12 using LAMP Stack. TYPO3 CMS is a powerful and flexible open-source content management system (CMS) for building and managing websites and web applications. It is developed in PHP and offers powerful features. The key features of TYPO3 CMS include:

  • Scalability
  • Flexibility
  • User Management
  • Content Management
  • Multilingual Support
  • SEO-Friendly
  • Community Support

Here we try to provide a step-by-step guide for TYPO3 CMS Setup on Debian 12. To do this, follow the steps below.

A Comprehensive Guide For TYPO3 CMS Setup on Debian 12

You need some requirements to complete the TYPO3 CMS installation on Debian 12. Let’s see what we need.


You must have access to your server as a non-root user with sudo privileges and set up a basic firewall. For this purpose, you can visit the Debian 12 Initial Setup Guide.

Because we want to install TYPO3 with LAMP stack, you must install it on your server. To do this, you can visit the LAMP Stack Setup on Debian 12.

Also, you need a domain name that is pointed to your server’s IP address.

When you are done, follow the steps below to complete the TYPO3 CMS Setup on Debian 12.

Step 1 – PHP Configuration For TYPO3 CMS

At this point, we assumed that you have installed Apache, MariaDB, and PHP from the requirements. Now you must install some PHP extensions on Debian 12:

sudo apt install libapache2-mod-php php-cli php-common php-gmp php-curl php-mysql php-json php-intl php-mbstring php-xmlrpc php-gd php-xml php-zip php-imap -y

Then, you must use your favorite text editor to open the php.ini file like Vi Editor or Nano Editor:

sudo vi /etc/php/8.2/apache2/php.ini

In the file look for the following directives and change their value as shown below:

max_execution_time = 240

memory_limit = 256M

upload_max_filesize = 100M

post_max_size = 100M

max_input_vars = 1500

date.timezone = Etc/UTC

When you are done, save and close the file.

Next, restart Apache to apply the changes:

sudo systemctl restart apache2

Step 2 – Configure Database User For TYPO3 CMS

At this point, you must create a TYPO3 database and user. To do this, log in to your MariaDB shell with the command below:

sudo mysql -u root -p

Then, from your MariaDB shell run the commands below to create the TYPO3 database, and user database, grant privileges, and exit from your shell:

MariaDB [(none)]> CREATE DATABASE typo3db; 
MariaDB [(none)]> CREATE USER 'typo3user'@'localhost' IDENTIFIED BY 'strongpassword'; 
MariaDB [(none)]> GRANT ALL PRIVILEGES ON typo3db.* TO 'typo3user'@'localhost'; 
MariaDB [(none)]> FLUSH PRIVILEGES; 
MariaDB [(none)]> EXIT;

Step 3 – Download the Latest TYPO3 CMS From Source on Debian 12

At this point, you need to visit the TYPO3 downloads page and get the latest version by using the following wget command under the /tmp directory:

# cd /tmp
# sudo wget --content-disposition

Then, extract your downloaded file in the /var/www/html directory by using the command below:

sudo tar -xvzf typo3_src-12.4.11.tar.gz -C /var/www/html

Next, switch to your web root directory and rename your TYPO3 file with the command below:

# cd /var/www/html 
# sudo mv typo3_src-12.4.11 /var/www/html/typo3

Now you can create a file on your web root directory for a fresh installation of TYPO3:

sudo touch /var/www/html/typo3/FIRST_INSTALL

Set the correct ownership for your TYPO3 and set the correct permissions on Debian 12 with the commands below:

# sudo chown -R www-data:www-data /var/www/html/typo3
# sudo chmod -R 755 /var/www/html/typo3

Step 4 – Apache Configuration for TYPO3 CMS

At this point, you need to create an Apache virtual host for TYPO3 by using the command below:

sudo vi /etc/apache2/sites-available/typo3.conf

Add the below content to the file with your valid domain name:

<VirtualHost *:80>
     DocumentRoot /var/www/html/typo3

     <Directory /var/www/html/typo3/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted

     ErrorLog ${APACHE_LOG_DIR}/typo3_error.log
     CustomLog ${APACHE_LOG_DIR}/typo3_access.log combined

When you are done, save and close the file.

Then, disable the default Apache configuration file with the following command:

sudo a2dissite 000-default.conf

Activate your TYPO3 CMS virtual host file on Debian 12 by using the command below:

sudo a2ensite typo3.conf

Finally, enable the Apache rewrite module and restart the Apache service to apply the changes:

# sudo a2enmod rewrite
# sudo systemctl restart apache2

Note: Remember to allow HTTP traffic through your UFW firewall:

# sudo ufw allow http
# sudo ufw reload

Step 5 – Access TYPO3 CMS Setup From Web Interface

At this point, you can continue your TYPO3 CMS Setup on Debian 12 through the web interface by typing your domain name in your web browser:

You will see the following screen. Enter ‘No problems detected, continue with installation‘.

Installing TYPO3 CMS From Web Interface

Then, enter your MariaDB user credentials for TYPO3 CMS installation.

Set database credentials for TYPO3 CMS

Next, you need to choose ‘Use an existing empty database‘, select the database ‘typo3db‘, and click Continue.

Continue TYPO3 CMS database setup

At this point, you need to create an Admin user and password for your TYPO3 CMS on Debian 12, choose a site name, and click Continue.

TYPO3 CMS Admin User setup

Now choose ‘Take me straight to the backend‘ and click ‘Open the TYPO3 Backend‘ to continue.

Open the TYPO3 Backend

Then, you will see your TYPO3 login screen. Enter your Admin user and password and click Login.

TYPO3 Login screen

You will see your TYPO3 CMS dashboard on Debian 12:

TYPO3 CMS Setup on Debian 12

With TYPO3 CMS you can create and manage dynamic web experiences with ease. It provides the tools and flexibility to meet your requirements.

Also, if you want to secure your TYPO3 CMS Setup on Debian 12, you can use this guide on Secure Apache Web Server with Let’s Encrypt on Debian 12.


At this point, you have learned TYPO3 CMS Setup on Debian 12 by using the LAMP Stack (Apache, MariaDB, and PHP). Then, you can easily access your CMS dashboard via the web interface and manage your websites. Hope you enjoy it.

Also, you may like to read the following articles:

Install and Configure WordPress on Debian 12

Joomla CMS LTS with LAMP Stack on Debian 12

Drupal CMS Installation with LAMP Stack on Debian / Ubuntu

Newsletter Updates

Enter your email address below and subscribe to our newsletter

Stay informed and not overwhelmed, subscribe now!