Установка TYPO3 CMS на Debian 11 с LAMP
Кратко: Пошаговое руководство по установке TYPO3 CMS на Debian 11 с LAMP — установка Apache, MariaDB, PHP, Composer, настройка виртуального хоста и первые шаги в админке. Подходит для серверных администраторов и разработчиков, желающих развернуть стабильный сайт на TYPO3.
О чём эта инструкция
В этой статье вы найдёте подробную пошаговую инструкцию по установке TYPO3 CMS на Debian 11 (Bullseye) с использованием стека LAMP (Linux, Apache, MariaDB, PHP). Мы пройдём все этапы: подготовка сервера, установка компонентов, базовая настройка безопасности MariaDB, установка Composer, развёртывание TYPO3 через Composer, настройка виртуального хоста Apache, запуск инсталлятора и первичная постустановка.
Важно знать коротко термины:
- LAMP: набор программ (Linux, Apache, MariaDB, PHP) для запуска веб-приложений.
- Composer: менеджер зависимостей PHP.
- DocumentRoot/public: публичная директория сайта, куда отдает файлы веб-сервер.

Требования
- Сервер с Debian 11 (Bullseye).
- Доступ root или пользователь с sudo-привилегиями.
- Доменное имя, указывающее на IP сервера.
Совет: для рабочей среды используйте отдельный тестовый сервер перед переносом в продакшн.
1. Установка LAMP стека
TYPO3 написан на PHP. Для работы нужна среда LAMP (или LEMP). В этом руководстве мы используем Apache и MariaDB.
Сначала обновите индекс пакетов:
sudo apt updateУстановите базовые пакеты LAMP и расширения PHP, требуемые TYPO3:
sudo apt install apache2 mariadb-server php php-common php-mysql libapache2-mod-php php-gd php-curl php-json php-xmlrpc php-intl php-bcmath php-zip php-apcu php-mbstring php-fileinfo php-xml php-soapПодтвердите установку, введя Y и нажав ENTER.

Настройка PHP
Отредактируйте файл конфигурации PHP для Apache. В руководстве используется путь для PHP 7.4 — при другой версии укажите соответствующий путь.
sudo nano /etc/php/7.4/apache2/php.iniИзмените или добавьте параметры:
memory_limit = 512M
max_execution_time = 240
max_input_vars = 1500
date.timezone = Europe/Amsterdam
post_max_size = 50M
upload_max_filesize = 50Сохраните файл и перезапустите Apache:
sudo systemctl restart apache2
sudo systemctl status apache2Ожидаемый результат: служба Apache активна (running).

Важно: укажите корректную временную зону в date.timezone для корректной работы журналов и планировщика задач.
2. Базовая защита MariaDB
MariaDB установлена, но конфигурация по умолчанию небезопасна. Запустите скрипт для базовой настройки безопасности.
sudo mysql_secure_installationСледуйте подсказкам. Пример диалога:
- Нажмите Enter при запросе текущего пароля (если его нет).
- Подтвердите переключение на unix_socket аутентификацию.
- Установите пароль root.
- Удалите анонимных пользователей.
- Запретите удалённый вход root.
- Удалите тестовую базу.
- Перезагрузите таблицы привилегий.
Пример команд и ответов показан в оригинальной инструкции; следуйте подсказкам mysql_secure_installation.
После завершения перезапустите MariaDB и проверьте статус:
sudo systemctl restart mariadb
sudo systemctl status mariadbОжидаемый результат: служба MariaDB активна (running).

Совет по безопасности: храните пароль root в надёжном менеджере паролей и ограничьте SSH-доступ по ключам.
3. Создание базы данных и пользователя для TYPO3
Войдите в оболочку MariaDB:
mysql -u root -pВыполните SQL-запросы для создания базы данных и пользователя. Пример:
CREATE DATABASE typo3db;
GRANT ALL PRIVILEGES ON typo3db.* to typo3@localhost IDENTIFIED BY 'typo3password';
FLUSH PRIVILEGES;
EXIT;Замените имя базы, имя пользователя и пароль на безопасные значения в вашей среде. Запишите эти данные — они понадобятся при установке TYPO3.

Безопасная практика: не используйте root для приложений. Для каждого приложения создавайте отдельного пользователя с минимальными правами.
4. Установка Composer
TYPO3 удобно устанавливать через Composer. Установите Composer глобально для пользователя web-сервера (www-data).
Скачайте установщик и проверьте хэш (в инструкции приведён пример проверки хэша; контролируйте актуальность хэша на https://getcomposer.org):
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '906a84df04cea2aa72f40b5f787e49f22d4c2f19492ac310e8cba5b96ac8b64115ac402c8cd292b8a03482574915d1a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"Если вы видите «Installer verified», запустите установщик:
php composer-setup.php
php -r "unlink('composer-setup.php');"Переместите скомпилированный файл в системный путь:
sudo mv composer.phar /usr/local/bin/composerПроверьте версию Composer под пользователем www-data:
sudo -u www-data composer --version
sudo -u www-data composer -vПример вывода показывает Composer v2.x — этого достаточно для установки TYPO3 последней ветки 11.x и выше.

5. Скачивание TYPO3 через Composer
Создайте директорию для проекта и установите права:
mkdir -p /var/www/typo3
sudo chown -R www-data:www-data /var/www/typo3
sudo chmod u+rw /var/www/typo3Перейдите в директорию и создайте проект TYPO3 через Composer от имени www-data:
cd /var/www/typo3
sudo -u www-data composer create-project typo3/cms-base-distribution:^11 .Composer скачает ядро TYPO3 и зависимости PHP.

После успешной установки проверьте структуру каталогов. Директория public служит DocumentRoot:
lsВы увидите директорию public и другие вспомогательные файлы.
Совет: храните исходники вне доступной части веб-сервера, а в качестве DocumentRoot используйте директорию public.
6. Настройка виртуального хоста Apache
Создайте конфигурацию виртуального хоста для вашего домена.
cd /etc/apache2/sites-available/
sudo nano typo3.confВставьте (отредактируйте ServerName и пути к SSL-сертификатам):
ServerName example.io
Redirect permanent / https://example.io/
ServerAdmin [email protected]
DocumentRoot /var/www/typo3/public
ServerName example.io
Protocols h2 http/1.1
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/example.io/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.io/privkey.pem
Options FollowSymlinks
AllowOverride All
Require all granted
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*) index.php [PT,L]
Сохраните конфигурацию и включите необходимые модули:
sudo a2enmod ssl rewrite headersАктивируйте виртуальный хост и проверьте конфигурацию Apache:
sudo a2ensite typo3.conf
sudo apachectl configtestОжидается сообщение: Syntax OK

Перезапустите Apache и убедитесь, что он активен:
sudo systemctl restart apache2
sudo systemctl status apache2
Важно: настройте автоматическое обновление сертификатов (например, Let’s Encrypt + certbot) и регенерацию ключей согласно вашим политикам безопасности.
7. Запуск установщика TYPO3
Создайте файл FIRST_INSTALL в публичной директории, чтобы разрешить веб-инсталлятор:
sudo -u www-data touch /var/www//typo3/public/FIRST_INSTALLОткройте в браузере ваш домен:
Следуйте шагам инсталлятора в веб-интерфейсе: проверка окружения, ввод данных базы данных, создание администратора, выбор пустой существующей базы typo3db.

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



После успешной установки откройте бэкенд TYPO3 для входа.


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


8. Первые шаги после установки
- Удалите файл FIRST_INSTALL и ограничьте доступ к установщику.
- Проверьте права на файлы и каталоги. Владелец должен быть www-data для веб-содержимого.
- Настройте cron/задачи для обновления индексов и удаления кэшей.
- Установите рекомендуемые расширения через Composer и менеджер расширений.
- Настройте бэкапы базы данных и файловой системы.
Рекомендуемые команды для прав и кешей:
sudo chown -R www-data:www-data /var/www/typo3
sudo find /var/www/typo3 -type d -exec chmod 750 {} \;
sudo find /var/www/typo3 -type f -exec chmod 640 {} \;9. Безопасность и эксплуатация
- Отключите доступ к административной части по IP или настройте двухфакторную аутентификацию.
- Регулярно обновляйте PHP, Apache, MariaDB и сами расширения TYPO3.
- Используйте WAF и ограничьте доступ к /typo3/* если это необходимо.
- Разделяйте окружения: development, staging, production.
Совет: мониторьте логи Apache и сообщения ядра TYPO3 для раннего обнаружения проблем.
10. Отладка и типичные проблемы
- Ошибка 500 после установки: проверьте логи Apache и права доступа к файлам.
- Невозможно подключиться к базе: проверьте host, пользователя, пароль и привилегии.
- Composer не запускается под www-data: убедитесь, что /usr/local/bin/composer доступен и права верны.
- SSL-проблемы: проверьте, что путь к сертификатам корректен и сертификаты не истекли.
Полезные команды для диагностики:
sudo tail -n 200 /var/log/apache2/error.log
sudo journalctl -u apache2 -e
sudo tail -n 200 /var/log/mysql/error.log
sudo -u www-data composer diagnoseДополнительные материалы и альтернативы
- Альтернатива установке через Composer: официальные дистрибутивы или Docker-образы.
- Для больших проектов рассмотрите использование MariaDB Galera или внешнего кластера БД.
- Для высокой нагрузки используйте кеширование (Redis, Varnish), распределение нагрузки и CDN.
Роли и ответственность
- Системный администратор: установка ОС, настройка LAMP, права, бэкапы, SSL.
- PHP-разработчик: установка расширений, настройка Composer, деплой.
- Контент-менеджер: настройка сайтов и страниц в бэкенде TYPO3.
Критерии приёмки
- Сайт отпускает статические страницы и админка доступна по HTTPS.
- База данных создана и доступна приложению.
- Права файлов заданы корректно, веб-сервер работает от пользователя www-data.
- Инсталлятор завершён, файл FIRST_INSTALL удалён или заблокирован.
Быстрый контрольный список перед вводом в эксплуатацию
- SSL корректно установлен и автоматическое обновление настроено.
- Права на файлы и каталоги настроены.
- Резервное копирование базы и файлов настроено.
- Логирование и мониторинг запущены.
- Пользователь админ создан и двухфакторная аутентификация включена при возможности.
Шаблон отката при неудачном обновлении
- Остановить прием трафика (перенаправить на страницу обслуживания).
- Восстановить файлы из резервной копии.
- Восстановить базу данных из бэкапа.
- Протестировать сайт и снять режим обслуживания.
Частые тесты и критерии приёмки
- Тест входа в админку под администратором.
- Тест публикации страницы и проверки видимости на фронтенде.
- Тест восстановления бэкапа и проверки данных.
Краткий глоссарий
- DocumentRoot: директория, которая отдается веб-сервером.
- Composer: менеджер зависимостей для PHP.
- FIRST_INSTALL: маркер, позволяющий запустить веб-инсталлятор TYPO3.
Заключение
Поздравляем с успешной установкой TYPO3 CMS на Debian 11 с LAMP. Вы настроили сервер, установили Composer и развернули TYPO3 через Composer, настроили виртуальный хост и прошли первичный веб-инсталлятор. Следующие шаги: настроить расширения, выполнить бэкапы, настроить мониторинг и оптимизировать производительность для вашей нагрузки.
Краткое резюме доступно ниже.
Сводка:
- TYPO3 успешно устанавливается через Composer и использует /var/www/typo3/public как DocumentRoot.
- Важные этапы: установка LAMP, защита MariaDB, создание БД, настройка Apache и SSL, удаление FIRST_INSTALL.
- Для продакшна настройте мониторинг, резервирование и безопасные практики управления правами.
Похожие материалы
RDP: полный гид по настройке и безопасности
Android как клавиатура и трекпад для Windows
Советы и приёмы для работы с PDF
Calibration в Lightroom Classic: как и когда использовать
Отключить Siri Suggestions на iPhone