Установка TYPO3 · 6 min read · Sep 24, 2025

Установка TYPO3 CMS с Nginx на AlmaLinux 9

TYPO3 — это бесплатная и с открытым исходным кодом система управления контентом уровня Enterprise. Она предоставляет множество функций уровня предприятия, таких как масштабируемая CMS с поддержкой нескольких сайтов, многоязычные установки, сильная реализация безопасности, молниеносная скорость и возможность работы в любом месте.

Использование TYPO3 CMS позволяет вам создавать гибкие и надежные веб-сайты. TYPO3 CMS имеет активное профессиональное сообщество. И по своей сути TYPO3 CMS является расширяемой системой управления контентом с адаптируемой и раздельной архитектурой.

В этом руководстве я покажу вам, как установить TYPO3 CMS на AlmaLinux 9 пошагово. Мы установим TYPO3 CMS с веб-сервером Nginx, сервером баз данных MariaDB и PHP-FPM.

Предварительные требования

Перед тем как продолжить, убедитесь, что у вас есть следующее:

  • Сервер AlmaLinux 9 — в этом примере используется сервер с именем хоста almalinux9.
  • Непривилегированный пользователь с правами sudo.
  • Доменное имя, указывающее на IP-адрес сервера.

Установка зависимостей

В следующих шагах вы установите пакетные зависимости для TYPO3 CMS, включая:

  • Nginx: в качестве веб-сервера.
  • MariaDB: в качестве сервера баз данных.
  • PHP-FPM: в этом примере будет использоваться PHP 8.1 для TYPO3 CMS.
  • Composer: менеджер зависимостей для PHP-приложений.

Теперь давайте начнем.

Сначала выполните следующую команду, чтобы добавить репозитории EPEL и Remi в вашу систему. Репозиторий Remi предоставляет несколько версий пакетов PHP и некоторые дополнительные расширения PHP, которые недоступны в стандартном репозитории appstream.

sudo dnf epel-release  
sudo dnf install -y https://rpms.remirepo.net/enterprise/remi-release-9.rpm

Введите y, чтобы подтвердить установку, и нажмите ENTER.

Добавление репозитория EPEL.

добавление репозитория epel

Добавление репозитория PHP Remi для RHEL 9.

добавление репозитория remi

Теперь выполните следующую команду, чтобы сбросить модуль репозитория PHP по умолчанию и включить модуль PHP 8.1 из репозитория Remi.

sudo dnf module reset php -y  
sudo dnf module enable php:remi-8.1 -y

включить php8.1 remi репозиторий

Далее выполните команду dnf ниже, чтобы установить пакетные зависимости для TYPO3 CMS. Когда будет предложено, введите y для подтверждения, затем нажмите ENTER.

sudo dnf install nginx mariadb-server composer ImageMagick php-fpm php-mysqlnd php-gd php-curl php-json php-intl php-bcmath php-zip php-apcu php-mbstring php-fileinfo php-xml php-soap

установка зависимостей

После установки зависимостей выполните команду systemctl ниже, чтобы запустить и включить основные службы, такие как Nginx, MariaDB и PHP-FPM.

sudo systemctl enable --now nginx mariadb php-fpm

Затем проверьте службы, используя следующую команду, чтобы убедиться, что все эти службы работают.

sudo systemctl status nginx mariadb php-fpm

Если служба работает, вы должны увидеть вывод active (running). Пример ниже показывает, что служба Nginx работает.

проверка служб

Наконец, выполните следующую команду, чтобы убедиться, что Composer установлен, и проверьте его версию.

sudo -u nginx composer -V

На момент написания этой статьи, Composer v2.5.5 установлен через репозиторий EPEL.

Настройка Firewalld

После установки пакетных зависимостей следующим шагом является настройка firewalld и открытие как HTTP, так и HTTPS протоколов.

Выполните команду firewall-cmd ниже, чтобы открыть как HTTP, так и HTTPS службы. Затем перезагрузите firewalld, чтобы применить изменения.

sudo firewall-cmd --add-service={http,https} --permanent  
sudo firewall-cmd --reload

Теперь проверьте список открытых портов и служб на firewalld, используя следующую команду.

sudo firewall-cmd --list-all

В разделе служб вы должны увидеть, что как HTTP, так и HTTPS включены.

настройка firewalld

Настройка сервера MariaDB

В следующем разделе вы обеспечите безопасность сервера MariaDB и создадите новую базу данных и пользователя, которые будут использоваться при установке TYPO3 CMS.

Сначала выполните команду mariadb-secure-installation, чтобы обеспечить безопасность вашей установки MariaDB.

sudo mariadb-secure-installation

В процессе вам будет предложено настроить сервер MariaDB. Введите Y, чтобы подтвердить шаг.

  • Переключить аутентификацию root MariaDB на unix_socket? Введите n.
  • Установить пароль root для MariaDB? Введите y, затем введите новый пароль и повторите его.
  • Отключить удаленный доступ для пользователя root? Введите y.
  • Удалить тестовую базу данных по умолчанию? Введите y снова.
  • Удалить анонимного пользователя по умолчанию? Введите y для подтверждения.
  • Перезагрузить привилегии таблиц, чтобы применить изменения? Введите y.

После обеспечения безопасности MariaDB войдите в MariaDB, используя команду mariadb ниже. Когда будет предложено ввести пароль, введите ваш пароль root для MariaDB.

sudo mariadb -u root -p

После входа в MariaDB выполните следующие запросы, чтобы создать новую базу данных typo3db, пользователя typo3 и пароль typo3password.

CREATE DATABASE typo3db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;  
GRANT ALL PRIVILEGES ON typo3db.* to typo3@localhost IDENTIFIED BY 'typo3password';  
FLUSH PRIVILEGES;

создание базы данных и пользователя

Далее выполните следующий запрос, чтобы проверить привилегии для пользователя MariaDB typo3 и убедиться, что пользователь может получить доступ к базе данных typo3db.

SHOW GRANTS FOR typo3@localhost;

В выводе вы должны увидеть, что пользователь MariaDB typo3 может получить доступ к базе данных typo3db.

показать привилегии пользователя

Введите quit, чтобы выйти из сервера MariaDB и завершить шаг.

Настройка PHP-FPM

С настроенным сервером MariaDB следующим шагом является настройка установки PHP-FPM. Вы интегрируете установку PHP-FPM с веб-сервером Nginx.

Сначала выполните следующую команду, чтобы установить часовой пояс по умолчанию для вашей системы.

sudo timedatectl set-timezone Europe/Stockholm

Теперь откройте конфигурацию PHP /etc/php.ini с помощью команды редактора vim.

sudo vim /etc/php.ini

Распакуйте параметр date.timezone и измените значение на правильный часовой пояс.

date.timezone = Europe/Stockholm

Увеличьте и включите некоторые параметры PHP следующим образом. Для параметра memory_limit отрегулируйте его в соответствии с текущей памятью, которую вы имеете.

memory_limit = 512M  
max_execution_time = 300  
max_input_vars = 2000

Теперь увеличьте параметры post_max_size и upload_max_filesize до 30MB.

post_max_size = 30M  
upload_max_filesize = 30M

Сохраните файл и выйдите из редактора, когда закончите.

Далее откройте конфигурацию пула PHP-FPM /etc/php-fpm.d/www.conf с помощью редактора vim.

sudo vim /etc/php-fpm.d/www.conf

Измените значение параметров user и group по умолчанию на nginx следующим образом:

user = nginx  
group = nginx

Сохраните файл и выйдите из редактора.

Теперь выполните следующую команду, чтобы перезапустить службу PHP-FPM и применить изменения. Затем проверьте PHP-FPM, чтобы убедиться, что он работает.

sudo systemctl restart php-fpm  
sudo systemctl status php-fpm

Если работает, вы должны получить вывод, похожий на этот:

настройка php-fpm

Кроме того, вы также можете проверить PHP-FPM, проверив файл сокета по умолчанию для PHP-FPM, который находится по адресу /run/php-fpm/www.sock. Выполните команду ss ниже, чтобы получить список доступных сокетов на вашей системе и отфильтровать вывод, чтобы показать только www.sock.

ss -pl | grep www.sock

Если PHP-FPM работает, вы должны увидеть, что файл сокета по умолчанию PHP-FPM /run/php-fpm/www.sock доступен следующим образом:

Загрузка TYPO3 CMS

TYPO3 CMS можно установить несколькими способами, и для этой демонстрации вы установите TYPO3 CMS через менеджер пакетов Composer.

Выполните следующую команду, чтобы создать новый каталог /var/www/typo3. Это будет использоваться в качестве целевого каталога для установки TYPO3 CMS.

mkdir -p /var/www/typo3

Далее выполните команду ниже, чтобы изменить владельца каталога /var/www/typo3 на пользователя nginx и обеспечить доступ на чтение и запись для владельца этого каталога.

sudo chown -R nginx:nginx /var/www/typo3  
sudo chmod u+rw /var/www/typo3

Теперь перейдите в каталог /var/www/typo3 и выполните команду Composer ниже, чтобы загрузить исходный код TYPO3 CMS.

cd /var/www/typo3  
sudo -u nginx composer create-project typo3/cms-base-distribution:^12 .

Когда установка будет запущена, вы должны увидеть процесс, похожий на этот:

загрузка и установка TYPO3 CMS

После загрузки TYPO3 выполните следующую команду, чтобы проверить список файлов и каталогов в /var/www/typo3.

ls -lah /var/www/typo3

Вы должны увидеть похожие файлы и каталоги, как на этом:

список файлов исходного кода TYPO3 CMS

Наконец, выполните бинарный файл TYPO3 CMS, чтобы начать конфигурацию, и вам будет предложено выполнить некоторые настройки.

sudo -u nginx ./vendor/bin/typo3 setup

Вам будет предложено выполнить некоторые настройки TYPO3 CMS.

  • Введите драйвер базы данных mysqli.
  • Введите пользователя базы данных, пароль, порт и хост.
  • Теперь введите имя базы данных, которая будет использоваться для TYPO3 CMS. В этом примере имя базы данных — typo3db.
  • Введите нового администратора, электронную почту и пароль для TYPO3 CMS.
  • Для имени проекта и базового URL сайта нажмите ENTER, чтобы оставить по умолчанию.

После завершения конфигурации TYPO3 CMS вы должны увидеть сообщение

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.