Install TYPO3 CMS on Ubuntu 20.04

introduction

TYPO3 is a free open source enterprise content management system (CMS) based on PHP. It’s flexible, reliable, and scalable with a wide variety of possible customizations. In addition, it supports several different operating systems with easy installation. Some important functions are:

  • Supports managing multiple websites.
  • Smart content management enables the creation and provision of content via all digital channels.
  • Digital marketing for the integration of digital marketing tools.
  • Offers multilingual installations for worldwide use.

This article describes how to install TYPO3 CMS on an Ubuntu 20.04 server.

requirements

  • Deploy a fully updated Vultr Ubuntu 20.04 server.
  • Create a non-root user with sudo enter.
  • PHP> = 7.4.1 <= 8.0.99.
  • MySQL 5.7+ / MariaDB / Postgres / SQLite support.

1. Install required packages

  1. SSH to your server as a non-root user using sudo enter.
  2. Refresh the system package list to update all packages to the latest available versions.

    $ sudo apt update
    
  3. Install PHP 7.4 and other modules.

    $ sudo apt install apache2 mysql-server php7.4 libapache2-mod-php7.4 php7.4-json php7.4-common php7.4-gmp php7.4-curl php7.4-mysql php7.4-intl php7.4-mbstring php7.4-xmlrpc php7.4-gd php7.4-cli php7.4-xml php7.4-zip php7.4-imap wget unzip -y
    
  4. List available time zones and choose your preference.

    $ sudo timedatectl list-timezones
    
  5. Edit the PHP configuration file.

    $ sudo nano /etc/php/7.4/apache2/php.ini
    

    Change and replace the following values Africa/Nairobi save with your time zone and close the file. To find a specific line, use Ctrl + W, type the search term, and press ENTER.

    max_execution_time = 240
    memory_limit = 256M
    upload_max_filesize = 100M
    post_max_size = 100M
    max_input_vars = 1500
    date.timezone = Africa/Nairobi
    
  6. Restart the Apache2 service for any changes made to take effect.

    $ sudo systemctl restart apache2
    

2. Create the TYPO3 database

  1. Log in to the MySQL shell. At the password prompt, simply press ENTER to continue.

    $ sudo mysql -u root -p
    
  2. Create a database called typo3.

    CREATE DATABASE typo3;
    
  3. Create a database user named typo3user with password StrongPassword.

    CREATE USER 'typo3user'@'localhost' IDENTIFIED BY 'StrongPassword';
    
  4. Grant the user full access to the database.

    GRANT ALL ON typo3.* TO 'typo3user'@'localhost' WITH GRANT OPTION;
    
  5. Save the changes made to the database.

    FLUSH PRIVILEGES;
    
  6. Exit MySQL shell.

    exit;
    

3. Install TYPO3 CMS

  1. To install curl.

    $ sudo apt install curl -y
    
  2. Download the latest release version of TYPO3 CMS. To find the latest version, visit official download Page.

    $ sudo curl -L -o typo3_src.tgz https://get.typo3.org/11.5.1
    
  3. Extract the downloaded files.

    $ sudo tar -xvzf typo3_src.tgz
    
  4. Create the installation directory /var/www/html/typo3.

    $ sudo mkdir /var/www/html/typo3
    
  5. Move the extracted files to the installation directory.

    $ sudo mv typo3_src-11.5.1/* /var/www/html/typo3
    
  6. For a new TYPO3 CMS server installation, create a file with the name FIRST_INSTALL in the web root directory.

    $ sudo touch /var/www/html/typo3/FIRST_INSTALL
    
  7. Change the owner of the installation directory.

    $ sudo chown -R www-data:www-data /var/www/html/typo3
    
  8. Change the access permissions for the directory.

    $ sudo chmod -R 755 /var/www/html/typo3
    

4. Configure Apache2

  1. Create a new one Apache Configuration file named typo3.conf.

    $ sudo nano /etc/apache2/sites-available/typo3.conf
    

    Add the following code to the file. Save and close the file.

    <VirtualHost *:80>
    
        ServerAdmin [email protected]
        DocumentRoot /var/www/html/typo3
        ServerName example.com
        ServerAlias www.example.com
    
         <Directory /var/www/html/typo3/>
             Options +FollowSymlinks
             AllowOverride All
             Require all granted
         </Directory>
    
         ErrorLog ${APACHE_LOG_DIR}/error.log
         CustomLog ${APACHE_LOG_DIR}/access.log combined
    
    </VirtualHost>
    
  2. Deactivate Apache Standard configuration file.

    $ sudo a2dissite 000-default.conf
    
  3. Activate TYPO3-CMS Apache Configuration file.

    $ sudo a2ensite typo3.conf
    
  4. Activate Apache Rewrite mode.

    $ sudo a2enmod rewrite
    
  5. Start anew Apache Service.

    $ sudo systemctl restart apache2
    

5. Access the TYPO3 CMS web interface

To access the TYPO3 CMS web interface, go to your browser and visit https://Server_IP/. To the example:

https://192.0.2.11/

diploma

You have installed TYPO3 CMS on your server. Access … Installation wizard Screen to complete the installation by connecting to the database you created and creating an administrator account. You can now access the dashboard and add content to manage.

More information

To learn more about using TYPO3 CMS, visit official documentation Page.

Related Posts