Install TYPO3 7 on Ubuntu
Installing TYPO3 easily
TYPO3 is one of the best-known CMS systems in the German-speaking world. It is particularly characterized by the possibility of being able to adapt it for almost any case and to operate large pages with large editorial teams. But the time, in which TYPO3 was categorized as too complex and unclear, is long gone. The modern CMS is a very stable and high-performing system, which is also suitable for small websites, with few adaptations.
In the following I will show you how to install the current LTS version TYPO3 7.6 on an Ubuntu 16.04 Cloud Server with PHP7 and Apache2.4.
As a basis for this tutorial we use the tutorial “How to install a LAMP server with PHP 7 and Apache 2.4 on Ubuntu 16.04“. If you have not already done this and do not have a running LAMP server, we recommend first to do the tutorial on the server installation and return directly afterwards.
First we need to install a few PHP packages that we need later on for TYPO3. To do this, log on to your server via SSH and install the following apt packages:
apt-get install php7.0-curl php7.0-gd php-imagick php7.0-soap php7.0-xml php7.0-zip
Creating a TYPO3 database user
Next, we want to create a database and a user for our TYPO3. (More about MySQL users can be found here.) For this, we log on to the server in the MySQL client and create the database and then the user. In the last step, we give the TYPO3 database user full access to the database and accept all settings so that we can continue.
But for now, step by step.
Log in as root:
mysql -u root -p
Create the database named “typo3”:
CREATE DATABASE typo3;
We create a user with the name typo_db_user and the password: “secretpassword” (Here you should choose a secure password and write it down for later.)
CREATE USER typo_db_user@localhost IDENTIFIED BY ‚secretpassword‘;
We give the user full rights to our newly created database and accept the settings:
GRANT ALL PRIVILEGES ON typo3.* TO typo_db_user@localhost; FLUSH PRIVILEGES;
With Exit, we can leave the MySQL client again.
It should look like this on your screen:
PHP settings and creating a TYPO3-vHost
First we have to make some PHP settings. For this we go into the php.ini and adjust a few settings:
Here we look for the line in the allow_url_fopen = On, and disable the function by changing it to Off.
allow_url_fopen = Off
We also adjust the following values:
Then we save the change.
To use the URL rewrite function, we need to enable mod_rewrite with the following command:
After that, you will be automatically prompted to restart Apache. You can do this directly or later, after creating the vHost.
To properly customize the vHost, we need to create the config file of the Apache2 default vHost.
Since we no longer need it, we will simply edit it:
We add it with the following content:
<VirtualHost *:80> ServerAdmin firstname.lastname@example.org DocumentRoot /var/www/html/ ServerName typo3websitedomain.de ServerAlias www.typo3websitedomain.de <Directory /var/www/html/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> ErrorLog /var/log/apache2/typo3websitedomain.de-error_log CustomLog /var/log/apache2/typo3websitedomain.de-access_log common </VirtualHost>
If you want to directly use a domain with your CMS, you can enter it accordingly in the Config. Simply replace typo3websitedomain.de with your domain.
If you have saved the settings, you can restart Apache and you should see the Apache2 test page when you enter the IP or domain.
First we have to download TYPO3. To do this, you can find the latest version and a download link at https://typo3.org/download/. Now it is the following
When the download is finished, we will extract the file:
tar xzvf typo3_src-7.6.13.tar.gz
Now we copy all files into our WebRoot folder, which is currently still / var / www / html /.
cd typo3_src-7.6.13/ cp -r . /var/www/html/
Next we change the rights for all files copied to the WebRoot to the Apache service user.
chown www-data:www-data -R /var/www/html/
Restart Apache again:
service apache2 restart
If you again enter your IP or domain in the browser, you should see the following:
To start the installation, we need to create an empty file called “FIRST_INSTALL” in our We directory. We do this with the following command:
Whether the file is empty or not doesn’t matter.
If you now make a reload of the page, you may see the following message. TYPO3 checks if you have made all settings and preparations correctly and shows you hints and warnings:
What is missing now is a symlink to the TYPO3 source. It is important that this is a link.
To create it, we first copy our typo3_source files from the tmp-order into the www-folder (parallel to the www) and then create the link:
cp -r /tmp/typo3_src-7.6.13 /var/www/ ln -s /var/www/typo3_src-7.6.13 /var/www/html/typo3_src
After a reload the message should have disappeared and we can continue the installation.
The next step is to specify the MySQL user (typo_db_user) selected above and the password:
On the next page you can select the previously created database “typo3”:
In the fourth step, you create the user with whom you want to log in to your TYPO3 backend. It is important here that you choose a secure password as well as a secure user. This makes it even more difficult for an attacker to find your account:
In addition, you can set the title of your site.
We have now completed all the steps and can now decide whether we want to create the first page of our TYPO3 installation directly or start directly with an empty TYPO3.
So the TYPO3 is now installed and you can start building your website.
The backend to the TYPO3-Login is reached by your / typo3 attached to your IP or Domain.
Have fun with TYPO3 and Ubuntu 16.04
Installing TYPO3 easily TYPO3 is one of the best-known CMS systems in the German-speaking world. It is particularly characterized by the possibility of being able to adapt it for almost any case and to operate large pages with large editorial teams. But the time, in which TYPO3 was categorized as too complex and unclear, is […]
Thank you for your feedback!
We will get back to you as soon as the article is finished.