4.1.14 Установка CMS Made Simple на хостинг и сервер

CMS Made Simple (CMSMS) — лёгкая CMS на PHP для корпоративных и малых проектов, ориентированная на простую структуру шаблонов и модульность. Поддерживает чистые URL, гибкое управление шаблонами Smarty, расширения через модули и стабильную работу на классическом стеке Nginx/Apache + PHP-FPM + MySQL/MariaDB. Шаблонизатор Smarty с наследованием макетов и блоков упрощает переиспользование компонентов и чистое разделение представления. Поддерживаются мультиязычные проекты (через модули), детальные роли доступа и кэширование страниц/шаблонов, что ускоряет рендеринг и упрощает SEO-настройки.
Подготовка окружения
Требования
- Активная услуга Хостинга, Виртуального или Выделенного сервера.
- CPU: 2 vCPU; RAM: от 2 ГБ; SSD: от 10 ГБ.
- ОС: Ubuntu 22.04 LTS/24.04 LTS.
- Веб-сервер: Nginx 1.20+ или Apache 2.4+.
- PHP: 8.1–8.3;
memory_limit≥256M. - СУБД: MySQL 5.7+/MariaDB 10.4+.
- Доступ: root или пользователь с правами
sudo.
Переменные окружения
DOMAIN_NAME— ваш домен.CMSMS_VERSION— версия CMSMS, напр.2.2.20.DB_HOST,DB_NAME,DB_USER,DB_PASSWORD— параметры БД.WWW_USER,WWW_GROUP— владелец веб-проекта, обычноwww-data.
Установка CMS Made Simple на хостинге
-
Загрузите дистрибутив CMSMS. Скачайте стабильный архив с официального сайта и сохраните локально.
-
Загрузите архив на хостинг через менеджер файлов или по FTP. Разархивируйте в корень сайта.
-
Создайте пользователя и базу данных.
-
Запустите веб-установщик. Откройте
http://DOMAIN_NAME/cmsms-<version>-install.php/и следуйте мастеру установки:
- Укажите желаемый язык для установки

- Пройдите проверку существующего ПО в директории установки

- Проверка окружения и расширений PHP.

- Введите параметры созданой базы данных
DB_HOST,DB_NAME,DB_USER,DB_PASSWORD.

- Создание суперпользователя для административной панели.

- Укажите название сайта и выберите дополнительный язык

- Подтверите распаковку файлов

- Подтверите создание и настройку базы данных

- Установка успешно завершена

Установка CMS Made Simple на сервер
Подготовка каталога и загрузка
Создайте директорию проекта, скачайте релиз и распакуйте:
sudo mkdir -p /var/www/DOMAIN_NAME && cd /var/www/DOMAIN_NAME
sudo wget -O cmsms.zip "https://downloads.cmsmadesimple.org/{$CMSMS_VERSION}/cmsms-CMSMS_VERSION.zip"
sudo apt update && sudo apt install -y unzip
sudo unzip cmsms.zip && sudo rm cmsms.zip
sudo chown -R WWW_USER:WWW_GROUP /var/www/DOMAIN_NAME
Создание БД и пользователя
mysql -u root <<'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;
Установка PHP-модулей
Для Ubuntu 22.04/24.04 установите PHP и расширения:
sudo apt install -y php8.2 php8.2-fpm php8.2-cli php8.2-mysql php8.2-xml php8.2-gd \
php8.2-curl php8.2-zip php8.2-intl php8.2-mbstring
php -v
php -m | grep -E "mbstring|intl|zip|curl|xml|gd|mysql"
Настройте конфигурацию php в файле php.ini: memory_limit=256M, max_execution_time=180, upload_max_filesize=32M, post_max_size=32M.
Конфигурация Nginx
server {
listen 80;
server_name DOMAIN_NAME;
root /var/www/DOMAIN_NAME;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
fastcgi_read_timeout 120;
}
# Ограничение прямого доступа к служебным путям
location ~* ^/(tmp|install|backup|uploads/secure)/ {
deny all;
return 403;
}
}
Активация сайта и проверка:
sudo ln -s /etc/nginx/sites-available/cmsms.conf /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
nginx -v
После этого откройте http://DOMAIN_NAME/cmsms-<version>-install.php/ и завершите установку в браузере.
Права и владельцы: Проверьте, что storage/tmp, uploads/ и кэш-каталоги принадлежат WWW_USER:WWW_GROUP и доступны для записи веб-серверу.
Настройка дополнительных функций CMS Made Simple
HTTPS (Let’s Encrypt)
Подключите сертификат и включите редирект на HTTPS. Полную инструкцию смотрите в нашей статье: Let’s Encrypt (Certbot).
# Добавьте в серверный блок:
if ($scheme = http) { return 301 https://$host$request_uri; }
ЧПУ-ссылки и правила маршрутизации
Включите Friendly URL в настройках CMSMS и убедитесь, что try_files активен как в примере. Для Apache используйте .htaccess из дистрибутива.
Кэш шаблонов и производительность
В админ-панели включите кэш и периодическую очистку временных файлов. При высокой нагрузке используйте OPcache в PHP.

Локализация и дата-время
Установите нужную локаль PHP и временную зону:
sudo sed -i 's#;date.timezone =#date.timezone = Europe/Kyiv#g' /etc/php/8.2/fpm/php.ini
sudo systemctl reload php8.2-fpm
Проверка работы
- Откройте
http://DOMAIN_NAME/— должна загрузиться главная страница без 404 и 500. - Войдите в админ-панель и очистите кэш. Создайте тестовую страницу.
Распространённые ошибки
| Ошибка/Симптом | Причина | Решение |
|---|---|---|
| 404 при включённых ЧПУ | Нет try_files или конфликт location |
Примените try_files $uri $uri/ /index.php?$query_string; |
| 500 при установке | Недостающие PHP-модули | Установите gd, mbstring, intl, curl, zip, xml, pdo_mysql |
Нет записи в uploads |
Неправильные права на файлы и папки сайта, которые мешают процессам пользователя www-data выполнить запись в указанную директорию |
chown -R WWW_USER:WWW_GROUP и chmod 775 нужных директорий |
| «Could not connect to database» | Неверные указаны данные для подключения к бд или localhost ≠ сокет |
Проверьте DB_HOST, доступ, GRANT, используйте 127.0.0.1 |
| Бесконечный редирект на HTTPS | Дублирующиеся правила | Оставьте один редирект на HTTP-сервере |
Полезные ссылки
Официальная документация и сообщества


