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

Установка Textpattern на Debian 10: пошаговый гид

6 min read Установка CMS Обновлено 26 Nov 2025
Установка Textpattern на Debian 10
Установка Textpattern на Debian 10

Скриншот интерфейса Textpattern с админкой и примером сайта

Textpattern — свободная CMS на PHP. Она лёгкая, быстрая и легко расширяется темами и плагинами. В этом руководстве мы установим Textpattern на свежий сервер с Debian 10.

Для кого это руководство

Коротко: для системных администраторов и разработчиков, которым нужно быстро развернуть лёгкую CMS с HTTPS. Требуются базовые навыки командной строки, работа с apt, доступ root или sudo и доменное имя.

Краткое определение: Textpattern — CMS с минимальным набором зависимостей, ориентированная на простую публикацию и кастомизацию через темы.

Требования

  • Свежая система Debian 10 с доступом к root или пользователю с sudo.
  • Зарегистрированное доменное имя, указывающее на сервер.
  • Рекомендуется резервная копия перед изменениями на production.

Если вы вошли под sudo-пользователем, переключитесь на root:

sudo su -

Установите переменную окружения $VISUAL на предпочитаемый текстовый редактор. Пример для nano:

echo "export VISUAL=nano" >> ~/.profile
. ~/.profile

Шаг 1: Установка необходимого ПО

Обновите кэш пакетов:

apt update

Установите Nginx, PHP-FPM, расширения PHP, MariaDB и certbot:

apt install -y nginx mariadb-server php-fpm php-xml php-mysql php-json php-mbstring php-zip certbot

Включите и запустите службы Nginx и MariaDB:

systemctl enable --now nginx.service mariadb.service

Important: По умолчанию Debian 10 поставляется с PHP 7.3. Если вы используете другой репозиторий и другую версию PHP, учтите изменения в имени сокета PHP-FPM (см. раздел о совместимости).

Шаг 2: Загрузка Textpattern

Скопируйте ссылку на .tar.gz релиз Textpattern с их страницы Releases на GitHub и загрузите на сервер с помощью wget. Пример для версии 4.7.3:

wget https://github.com/textpattern/textpattern/releases/download/4.7.3/textpattern-4.7.3.tar.gz

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

tar -xzf textpattern*.tar.gz
rm textpattern*.tar.gz
mv textpattern* /var/www/html/textpattern

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

Шаг 3: Настройка базы данных

Для начала выполните mysql_secure_installation, чтобы выполнить базовую защиту MariaDB:

mysql_secure_installation

Ответьте на вопросы скрипта и задайте надежный пароль для root. Пример взаимодействия:

Enter current password for root (enter for none): 
Set root password? [Y/n] y
New password: your_password
Re-enter new password: your_password
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y

Затем создайте базу данных и пользователя для Textpattern. Войдите в MySQL-шелл:

mysql -u root -p

Введите пароль root, затем выполните команды (замените textpattern_user_password на сложный пароль):

MariaDB [(none)]> CREATE DATABASE textpattern_db;
MariaDB [(none)]> CREATE USER textpattern_user IDENTIFIED BY 'textpattern_user_password';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON textpattern_db.* TO textpattern_user;
MariaDB [(none)]> \q

Security note: Для production избегайте использования root для приложений. Давайте минимальные привилегии, необходимые для работы CMS.

Шаг 4: Конфигурация Nginx и HTTPS

Сначала получите SSL-сертификат от Let’s Encrypt, используя certbot с веб-рутом:

certbot certonly --webroot --webroot-path /var/www/html -d "your_domain" -m "[email protected]"

При корректной настройке DNS certbot получит сертификат, который мы применим к конфигурации Nginx.

Отключите конфигурацию по умолчанию:

rm /etc/nginx/sites-enabled/default

Откройте новый файл конфигурации:

$VISUAL /etc/nginx/sites-available/textpattern

Вставьте конфигурацию, заменив your_domain на ваш домен:

server {
  listen 80;
  #replace your_domain below
  server_name your_domain;
  return 301 https://$server_name$request_uri;
}
server {
  listen 443 ssl;
  #replace your_domain below
  server_name your_domain;
  root /var/www/html/textpattern;
  index index.php;
  ssl on;
  #replace your_domain below
  ssl_certificate /etc/letsencrypt/live/your_domain/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/your_domain/privkey.pem;
  location ~* \.php$ {
    fastcgi_pass unix:/run/php/php7.3-fpm.sock;
    include         fastcgi_params;
    fastcgi_param   SCRIPT_FILENAME    $document_root$fastcgi_script_name;
    fastcgi_param   SCRIPT_NAME        $fastcgi_script_name;
  }
}

Примечание: Путь к сокету fastcgi_pass может отличаться, если у вас другая версия PHP (например, php7.4-fpm.sock или php8.0-fpm.sock). Проверьте /run/php/ или systemd unit для точного имени.

Создайте символическую ссылку в sites-enabled:

ln -s /etc/nginx/sites-available/textpattern /etc/nginx/sites-enabled/

Проверьте синтаксис конфигурации и перезагрузите Nginx:

nginx -t
systemctl reload nginx.service

Important: Если certbot выдаёт ошибки валидации, проверьте DNS записи и временно разрешите HTTP доступ к /.well-known/acme-challenge.

Шаг 5: Веб-установщик Textpattern и финальные шаги

Перейдите в браузере по адресу https://your_domain/textpattern/setup/ чтобы запустить веб-установщик. После выбора языка введите данные базы данных:

  • MySQL user name: textpattern_user
  • MySQL password: пароль, который вы задали для textpattern_user
  • MySQL server: localhost
  • MySQL database: textpattern_db
  • Table prefix: оставьте пустым

Инсталлятор проверит доступ к базе данных и сгенерирует конфигурацию. Затем создайте файл конфигурации на сервере:

$VISUAL /var/www/html/textpattern/textpattern/config.php

Вставьте сгенерированный конфиг, сохраните и выйдите. Продолжите установку через веб-интерфейс: создайте администратора и настройте сайт.

После успешной установки удалите каталог setup:

rm -rf /var/www/html/textpattern/textpattern/setup

Дайте системному пользователю Nginx права на запись в нужные директории:

chown -R www-data /var/www/html/textpattern/{files,images,themes}

Админка Textpattern будет доступна по адресу https://your_domain/textpattern

Рекомендации по безопасности и обслуживанию

  • Настройте автоматическое продление сертификатов Let’s Encrypt: certbot обычно добавляет systemd таймер. Проверьте работу командой sudo certbot renew –dry-run.
  • Включите firewall (ufw) и разрешите только порты 22, 80, 443 по необходимости.
  • Рассмотрите установку fail2ban для защиты SSH и Nginx.
  • Регулярно обновляйте систему: apt update && apt upgrade.

Отладка и типичные ошибки

  1. 502 Bad Gateway после настройки Nginx

    • Проверьте, запущен ли PHP-FPM: systemctl status php7.3-fpm (или вашу версию).
    • Убедитесь, что fastcgi_pass в конфигурации указывает на существующий сокет.
  2. Ошибки доступа к базе данных

    • Проверьте правильность логина/пароля и привилегий пользователя в MariaDB.
    • Проверьте, что MySQL слушает локально и разрешает подключение от localhost.
  3. certbot не может получить сертификат

    • Убедитесь, что ваш домен указывает на IP сервера.
    • Временно разрешите HTTP и проверьте /.well-known/acme-challenge ручным запросом.

Альтернативные варианты и совместимость

  • Веб-сервер: вместо Nginx можно использовать Apache с mod_php или PHP-FPM. Apache упростит .htaccess-правила, но Nginx обычно работает быстрее.
  • БД: Textpattern поддерживает MySQL/MariaDB. Для внешних баз учтите доступ и брандмауэр.
  • PHP: Textpattern корректно работает на PHP 7.3+, но убедитесь в наличии нужных расширений (xml, mysql, mbstring, zip).

Совместимость: если вы планируете обновление Debian или PHP, проверьте изменение пути сокета PHP-FPM и синтаксиса конфигураций.

Чек-листы по ролям

Системный администратор

  • Установить и настроить Nginx, PHP-FPM, MariaDB
  • Получить и проверить SSL сертификат
  • Настроить firewall и fail2ban

Разработчик / интегратор

  • Настроить конфигурацию Nginx для корректной обработки PHP
  • Проверить права на директории files, images, themes
  • Подготовить резервную стратегию и план обновлений

Контент-менеджер

  • Создать учётную запись администратора в веб-установщике
  • Настроить основные параметры сайта и тему

Мини-методология развертывания

  1. Подготовьте сервер и DNS. 2. Установите базовый стек (Nginx, PHP-FPM, MariaDB). 3. Загрузите Textpattern и создайте БД. 4. Настройте Nginx и SSL. 5. Завершите установку через веб-интерфейс. 6. Проверьте безопасность и резервирование.

Примеры тестов приёмки

  • Сайт доступен по HTTPS и редиректит с HTTP.
  • Админка доступна и позволяет залогиниться после создания учетной записи.
  • Права на записи в папках корректны (загрузка изображений, установка тем).
  • SSL-сертификат валиден и certbot может выполнить dry-run renewal.

Советы по миграции и обновлению

  • При переходе на другую версию PHP сначала установите новую версию, проверьте сокеты и конфиги PHP-FPM, затем переключите fastcgi_pass.
  • Перед обновлением Textpattern сделайте бэкап базы и файлов: дамп MySQL и архив каталога /var/www/html/textpattern.

Краткое резюме

Textpattern — компактная CMS, которую легко развернуть на Debian 10. Процесс включает подготовку сервера, установку стека, создание базы данных, получение SSL и завершение установки через веб-интерфейс. Обратите внимание на права доступа и версию PHP при настройке fastcgi.

Важно: После установки настройте автоматическое обновление сертификатов и регулярные бэкапы.

Сообщение для публикации (анонс, 100–200 слов):

Развёрнутое руководство по установке Textpattern на Debian 10. В статье показано, как шаг за шагом подготовить сервер, установить Nginx, PHP-FPM и MariaDB, настроить HTTPS через Let’s Encrypt, запустить веб-инсталлятор Textpattern и обеспечить базовую безопасность. Подходит для администраторов и разработчиков, желающих быстро получить лёгкую CMS с минимальными зависимостями.

Социальный предпросмотр (OG): используйте заголовок и описание из метаданных ниже.

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

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

RDP: полный гид по настройке и безопасности
Инфраструктура

RDP: полный гид по настройке и безопасности

Android как клавиатура и трекпад для Windows
Гайды

Android как клавиатура и трекпад для Windows

Советы и приёмы для работы с PDF
Документы

Советы и приёмы для работы с PDF

Calibration в Lightroom Classic: как и когда использовать
Фото

Calibration в Lightroom Classic: как и когда использовать

Отключить Siri Suggestions на iPhone
iOS

Отключить Siri Suggestions на iPhone

Рисование таблиц в Microsoft Word — руководство
Office

Рисование таблиц в Microsoft Word — руководство