Гид по технологиям

Как установить Concrete5 с Apache и Let's Encrypt на Debian 11

• 5 min read • Инструкции • Обновлено 24 Nov 2025
Установка Concrete5 на Debian 11 с Apache и SSL
Установка Concrete5 на Debian 11 с Apache и SSL

Важно: команды и файлы конфигурации отражены так, как в исходном руководстве. Перед вводом паролей и имен хостов замените примеры (concrete5.yourdomain.com, password) на реальные значения.

Что такое Concrete5

Concrete5 — это бесплатная система управления контентом (CMS), написанная на PHP. Она ориентирована на удобство редактирования прямо через веб-интерфейс, подходит для пользователей с минимальными навыками. Ключевые характеристики: простота, расширяемость, мобильная оптимизация и SEO-дружелюбность.

Основные варианты запроса (SEO intent)

  • установка Concrete5
  • Concrete5 на Debian 11
  • Concrete5 Apache SSL
  • How to install Concrete5

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

  • Сервер с Debian 11.
  • Домен, указывающий на IP сервера (A-запись).
  • Доступ root или пользователь с sudo.

Шаг 1 — Установите Apache, MariaDB и PHP

Установите Apache, MariaDB, PHP и необходимые расширения. В примере используется пакетный набор, указанный в оригинале:

apt-get install apache2 mariadb-server php libapache2-mod-php libapache2-mod-php php-common php-mbstring php-xmlrpc php-soap php-gd php-xml php-intl php-mysql php-cli php-ldap php-zip php-curl -y

Примечание: в Debian 11 по умолчанию может быть доступна версия PHP 7.3 или выше. Проверьте актуальную версию и при необходимости адаптируйте путь к php.ini.

После установки откройте файл php.ini для Apache:

nano /etc/php/7.3/apache2/php.ini

Измените или подтвердите параметры:

file_uploads = On
allow_url_fopen = On
memory_limit = 256M
upload_max_filesize = 64M
date.timezone = UTC

Сохраните и перезапустите Apache:

systemctl restart apache2

Совет: если у вас другая версия PHP (напр. 7.4), замените путь к php.ini аналогично.

Шаг 2 — Создайте базу данных для Concrete5

Concrete5 работает с MariaDB / MySQL. Войдите в консоль MariaDB:

mysql

Создайте базу данных и пользователя (замените ‘password’ на надёжный пароль):

MariaDB [(none)]> CREATE DATABASE concrete5;
MariaDB [(none)]> CREATE USER 'concrete5'@'localhost' IDENTIFIED BY 'password';
MariaDB [(none)]> GRANT ALL ON concrete5.* TO 'concrete5'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Короткое объяснение: CREATE DATABASE создаёт базу; CREATE USER регистрирует пользователя; GRANT даёт необходимые права.

Шаг 3 — Скачайте и разместите файлы Concrete5

Скачайте актуальный архив Concrete5. В оригинале использовался примерный URL:

wget https://www.concretecms.org/application/files/3916/3649/1545/concrete-cms-9.0.1.zip

Распакуйте и переместите в корневую директорию веб-сервера:

unzip concrete-cms-9.0.1.zip
mv concrete-cms-9.0.1 /var/www/html/concrete5
chown -R www-data:www-data /var/www/html/concrete5/
chmod -R 755 /var/www/html/concrete5/

Совет: если сайт будет размещён в подпапке или другом документ-руте — скорректируйте DocumentRoot.

Шаг 4 — Настройте виртуальный хост Apache

Создайте файл конфигурации для сайта:

nano /etc/apache2/sites-available/concrete5.conf

Вставьте (замените ServerName и email на реальные значения):


     ServerAdmin [email protected]
     DocumentRoot /var/www/html/concrete5
     ServerName concrete5.yourdomain.com

     
        Options +FollowSymlinks
        AllowOverride All
        Require all granted
     

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined

Включите сайт и модуль перезаписи URL:

a2ensite concrete5.conf
a2enmod rewrite
systemctl restart apache2

Проверьте статус Apache:

systemctl status apache2

Если сервис активен — переходим дальше.

Шаг 5 — Доступ к установке через браузер

Откройте http://concrete5.yourdomain.com и следуйте мастеру установки: выберите язык, подтвердите установленные PHP-расширения и заполните данные администратора и базы данных.

Экран приветствия мастера установки Concrete5

Выбор языка и начальная страница установки

Проверка PHP-расширений перед установкой

Заполнение учётных данных администратора и базы данных

Успешная установка Concrete5 — готово к редактированию

Панель управления Concrete5 после входа

ALT-примечание: все изображения оставлены в исходных местах; их тексты ALT переписаны и описывают соответствующие экраны установки.

Шаг 6 — Защитите сайт сертификатом Let’s Encrypt (Certbot)

Установите Certbot для Apache:

apt-get install python3-certbot-apache -y

Запустите выдачу сертификата (замените concrete5.yourdomain.com на действительное имя):

certbot --apache -d concrete5.yourdomain.com

Во время работы Certbot подтвердите email и примите условия. В конце выберите вариант перенаправления HTTP на HTTPS (рекомендуется выбрать перенаправление).

Команда для проверки и автоматического обновления сертификатов (ручной запуск):

certbot renew --dry-run

Чтобы автоматизировать — используйте системный таймер (cron/systemd) — на большинстве дистрибутивов Certbot уже добавляет автоматическое обновление.

Важное сообщение, которое вы увидите после успешной установки, содержит пути к сертификату и ключу:

  • /etc/letsencrypt/live/concrete5.yourdomain.com/fullchain.pem
  • /etc/letsencrypt/live/concrete5.yourdomain.com/privkey.pem

Критерии приёмки

  • Сайт открывается по HTTPS без ошибок сертификата.
  • Мастер установки Concrete5 прошёл и вы вошли в панель администратора.
  • Приложение корректно подключается к базе данных (нет ошибок подключения).
  • PHP-расширения, требуемые Concrete5, установлены.

Типичные проблемы и способы устранения

  • Ошибка подключения к базе: проверьте имя базы, имя пользователя, пароль и что MariaDB слушает локальные запросы.
  • Ошибки прав доступа: удостоверьтесь, что владелец — www-data и права 755/644 применены к файлам и папкам.
  • Certbot не может доказать владение доменом: проверьте, что DNS A-запись указывает на IP сервера и что порт 80/443 открыт в фаерволе (ufw/iptables).

Альтернативы и расширения

  • Nginx: вместо Apache используйте Nginx + PHP-FPM; конфигурация будет отличаться, но принципы схожи.
  • Docker: можно развернуть Concrete5 в контейнерах для изоляции окружения.
  • Внешние базы данных: при необходимости можно подключиться к удалённой MariaDB или Amazon RDS.

Безопасность и эксплуатация

  • Регулярно обновляйте систему и пакеты: apt-get update && apt-get upgrade.
  • Ограничьте доступ к SSH (ключи, смените порт при необходимости).
  • Настройте резервное копирование базы данных и файлов (cron + rsync/pg_dump/mysql-dump).
  • Для дополнительной защиты включите модуль Apache mod_security и правила WAF.

Резервный план и откат

  • Перед крупными изменениями делайте бэкап: копия /var/www/html/concrete5 и дамп базы данных.

Пример команды дампа:

mysqldump -u root -p concrete5 > /root/concrete5_backup.sql

Откат: восстановление дампа и возврат файлов из архива.

Чек-лист ролей (Admin / Dev / DevOps)

  • Admin:
    • Проверить доступ в админ-панель.
    • Настроить учётные записи редакторов и права.
  • Dev:
    • Проверить тему и плагины на совместимость.
    • Настроить среду разработки и миграции.
  • DevOps:
    • Настроить мониторинг, бэкапы и SSL-обновления.
    • Настроить брандмауэр и автоматическое обновление пакетов.

Быстрая методика проверки работоспособности

  1. Открыть https://concrete5.yourdomain.com — страница должна загружаться.
  2. Войти в панель администратора — создать тестовую страницу.
  3. Проверить логи Apache (/var/log/apache2/error.log) на предмет ошибок.
  4. Запустить certbot renew –dry-run для проверки автоматического продления.

Короткий словарь

  • Certbot — инструмент для получения и обновления сертификатов Let’s Encrypt.
  • DocumentRoot — директория, откуда Apache отдаёт файлы сайта.
  • MariaDB — форк MySQL, СУБД для хранения данных CMS.

Итог

Поздравляем — теперь у вас есть рабочая установка Concrete5 на Debian 11 с Apache и сертификатом Let’s Encrypt. Проверьте базовые настройки безопасности, настройте мониторинг и резервные копии. Если нужно, вы можете перейти на Nginx или контейнеризацию для более продвинутых сценариев.

Если у вас остались вопросы по конкретным шагам (настройка прав, конфигурация PHP, автоматизация обновлений) — опишите проблему, и мы разберём её подробнее.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро