4.1.15 Установка Subrion CMS на хостинг и сервер

Subrion CMS — свободная CMS и фреймворк на PHP/MySQL для сайтов любого типа: от блогов и каталогов до сложных порталов с платной подпиской и расширенной системой прав и пакетов. Проект распространяется по GPLv3, поддерживает плагины, шаблоны и гибкую модель доступа пользователей.
В руководстве используется классическая установка через архив Subrion, конфигурация стека Nginx + PHP-FPM + MySQL/MariaDB на Ubuntu 24.04 LTS и последующий запуск веб-установщика.
Подготовка
Требования
- Активная услуга Хостинга, Виртуального или Выделенного сервера
- CPU: 2–4 vCPU; RAM: от 4 ГБ; SSD: от 20 ГБ
- ОС: Ubuntu 22.04 LTS или 24.04 LTS
- Веб-сервер: Nginx 1.20+ или Apache 2.4+
Переменные окружения
DOMAIN_NAME— Ваше доменное имяSERVER_IP— публичный IP-адрес сервераDB_NAME,DB_USER,DB_PASSWORD— параметры базы данных для SubrionSUBRION_PATH— путь к каталогу проекта, например/var/www/subrionPHP_FPM_SOCKET— путь к сокету PHP-FPM, например/run/php/php8.2-fpm.sock
Установка Subrion CMS на хостинг
- Скачайте стабильную версию Subrion CMS с официального сайта Subrion CMS
- Загрузите архив на хостинг через менеджер файлов или по FTP.
- Создайте пользователя и базу данных. Сохраните
DB_HOST,DB_NAME,DB_USER,DB_PASSWORD. - Запустите установщик через браузер. Откройте
http://DOMAIN_NAMEи следуйте мастеру установки:
- Проверьте соответствие техническим требованиям;

- Приймите лицензионное соглашение;

- Заполните параметры созданой ранее базы данных (
DB_HOST,DB_NAME,DB_USER,DB_PASSWORD) и администратора;

- При необходимости скачайте конфигурационный файл;

Установка Subrion CMS на сервер
sudo apt update && sudo apt -y upgrade
sudo apt -y install curl gnupg2 software-properties-common unzip ca-certificates
Обновляются пакеты системы и устанавливаются утилиты, необходимые для загрузки архивов и работы с репозиториями.
Установите PHP-FPM и необходимые расширения
sudo apt -y install php8.2 php8.2-fpm php8.2-cli \
php8.2-mbstring php8.2-xml php8.2-gd php8.2-zip \
php8.2-curl php8.2-mysql php8.2-intl php8.2-opcache
php -v
Subrion работает на современном PHP; набор модулей покрывает требования к работе с БД, изображениями, архивами и локалями. Команда php -v фиксирует установленную версию PHP.
Установите Nginx
sudo apt -y install nginx
sudo systemctl enable --now nginx
Nginx будет обрабатывать HTTP-запросы и передавать PHP-скрипты в PHP-FPM.
Установите и подготовьте СУБД (MySQL/MariaDB)
sudo apt -y install mysql-server
mysql --version
Создайте базу данных и пользователя для Subrion:
sudo mysql <<SQL
CREATE DATABASE DB_NAME CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'DB_USER'@'localhost' IDENTIFIED BY 'DB_PASSWORD';
GRANT ALL PRIVILEGES ON DB_NAME.* TO 'DB_USER'@'localhost';
FLUSH PRIVILEGES;
SQL
Используется кодировка utf8mb4 для полной поддержки Unicode и эмодзи в контенте сайта.
Загрузите и разверните Subrion
Subrion распространяется в виде zip-архива; установка выполняется из официального архива проекта. Скачайте стабильную версию Subrion CMS с официального сайта Subrion CMS
sudo mkdir -p SUBRION_PATH
cd SUBRION_PATH
wget https://tools.subrion.org/get/latest.zip
unzip latest.zip
rm latest.zip
Архив latest.zip содержит актуальный релиз ветки 4.2.x; после распаковки файлы приложения готовы к запуску установщика.
Права и владелец проекта
sudo chown -R www-data:www-data SUBRION_PATH
sudo find SUBRION_PATH -type d -exec chmod 755 {} \;
sudo find SUBRION_PATH -type f -exec chmod 644 {} \;
Владелец www-data (пользователь веб-сервера и PHP-FPM) обеспечивает корректную запись временных файлов, кэша и загружаемых файлов.
Конфигурация Nginx для Subrion
Ниже пример виртуального хоста Nginx, адаптированный под Subrion и PHP-FPM-сокет. Конфигурация основана на рабочем примере для Subrion под Nginx с корректной обработкой ЧПУ и установщика.
server {
listen 80;
server_name DOMAIN_NAME;
root SUBRION_PATH;
index index.php;
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:PHP_FPM_SOCKET;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location /install/ {
rewrite ^/install/(.*)$ /install/index.php?_p=$1;
}
location ~ /\.ht {
deny all;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}
}
Активируйте сайт и перезагрузите Nginx:
sudo ln -s /etc/nginx/sites-available/subrion.conf /etc/nginx/sites-enabled/subrion.conf
sudo nginx -t
sudo systemctl reload nginx
Параметр try_files передаёт запросы к index.php с параметром q, как ожидает Subrion, а отдельный блок location /install/ обеспечивает корректную работу веб-установщика.
Внимание! После завершения установки обязательно удалите каталог /install/, измените стандартный URL административной панели, ограничьте доступ к админке по IP или HTTP-аутентификации и регулярно обновляйте движок и плагины. Для версии 4.2.1 ранее публиковались уязвимости, связанные с загрузкой файлов (например, CVE-2018-19422), поэтому не используйте тестовый демо-логин/пароль и отключайте неиспользуемые пакеты.
Настройка дополнительных функций Subrion
SSL-сертификат (HTTPS)
Для работы по защищенному протоколу HTTPS используйте Let’s Encrypt или коммерческий SSL-сертификат
Кэширование и производительность PHP
Включите и настройте opcache для ускорения работы Subrion:
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=256
opcache.max_accelerated_files=20000
opcache.interned_strings_buffer=16
opcache.validate_timestamps=1
opcache.revalidate_freq=60
Перезапустите PHP-FPM:
sudo systemctl restart php8.2-fpm
Обработка изображений и медиаконтента
Subrion активно использует изображения в шаблонах и контенте; для их обработки достаточно библиотеки GD, но при необходимости можно подключить Imagick.
sudo apt -y install php8.2-gd imagemagick php8.2-imagick
sudo systemctl restart php8.2-fpm
Рекомендация! Для типовых сайтов достаточно php8.2-gd. Подключайте php8.2-imagick, если требуется работа с большими изображениями, TIFF/WEBP или расширенные эффекты. Проверить наличие модулей можно командой php -m | grep -E 'gd|imagick'.
Проверка работы
- Перейдите на
http://DOMAIN_NAME/и убедитесь, что открывается стартовая страница Subrion без PHP-ошибок. - Войдите в админ-панель (
http://DOMAIN_NAME/panel/или переименованный URL) и проверьте:- работу дашборда,
- создание и публикацию тестовой страницы,
- загрузку файлов в разделе контента.
Распространённые ошибки
| Ошибка / Симптом | Причина | Решение |
|---|---|---|
| 502 Bad Gateway при открытии сайта | Неверный PHP_FPM_SOCKET в конфиге Nginx или не запущен PHP-FPM |
Уточните путь к сокету (/run/php/php8.2-fpm.sock), перезапустите php8.2-fpm и nginx |
Установщик зацикливается на /install/ или переходит на /install/install/ |
Неправильный блок location / или отсутствует правило location /install/ в Nginx |
Примените конфиг из примера (строка try_files $uri $uri/ /index.php?q=$uri&$args; и блок location /install/), перезагрузите Nginx |
Access denied for user 'DB_USER'@'localhost' при установке |
Неверные DB_USER/DB_PASSWORD или отсутствуют права на DB_NAME |
Пересоздайте пользователя с нужным паролем и выдайте GRANT ALL PRIVILEGES ON DB_NAME.* |
| Белый экран или HTTP 500 после установки | Фатальная ошибка PHP (несовместимое расширение, устаревший модуль или ошибка в плагине) | Включите отображение ошибок на время диагностики, временно отключите сторонние плагины, обновите PHP-модули |
| Нельзя загрузить файлы или аватары | Неверные права на каталоги uploads/, tmp/ или ограничения open_basedir |
Установите владельца www-data и права 755 на каталоги, проверьте настройки PHP в панели |
| Жалобы сканеров безопасности на уязвимость Subrion 4.2.1 | Используется устаревший неподдерживаемый релиз с известными уязвимостями (в т.ч. произвольная загрузка файлов) | Ограничьте доступ к админке, отключите небезопасные плагины, примените патчи от разработчиков или рассмотрите миграцию на другой актуальный движок при невозможности обновления Subrion |
Полезные ссылки
Официальная документация и ресурсы


