Установка October CMS на CentOS 7
Требования
Перед началом убедитесь, что ваш сервер соответствует минимальным требованиям October CMS. Основные требования к серверу для хостинга:
- PHP версии 7.0 или выше (рекомендуется PHP 7.2 и выше)
- PHP PDO Extension
- cURL PHP Extension
- OpenSSL PHP Extension
- Mbstring PHP Library
- Zip PHP Library
- GD PHP Library
- XML PHP Extension
- JSON PHP Extension
- Веб-сервер: Apache с mod_rewrite или Nginx
Факт-бокс
- Минимум PHP: 7.0
- Рекомендуемая версия в примерах: PHP 7.2
- Пример MariaDB в инструкции: 5.5.x (из пакета CentOS)
Предварительные условия
- Сервер под управлением CentOS 7
- Непользователь root с sudo-привилегиями
Начальные действия
Проверьте версию CentOS:
cat /etc/centos-release
# CentOS Linux release 7.5.1804 (Core)Настройка часового пояса:
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'Обновите пакеты ОС:
sudo yum update -yУстановите утилиты:
sudo yum install -y vim git unzip socatВажно
- Всегда выполняйте обновление пакетов перед установкой серверного ПО.
- Работайте под учетной записью с sudo, а не root, если это возможно.
Шаг 1 — Установка PHP
October CMS требует PHP ≥ 7.0. В репозиториях CentOS 7 часто поставляется более старая версия PHP, поэтому мы добавим сторонний репозиторий Webtatic и установим PHP 7.2 в примере.
Подключите репозиторий Webtatic:
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpmУстановите PHP и необходимые расширения:
sudo yum install -y php72w-cli php72w-fpm php72w-pdo php72w-common php72w-mysql php72w-curl php72w-json php72w-zip php72w-gd php72w-xml php72w-mbstringПроверьте версию PHP:
php --version
# PHP 7.2.11 (cli) (built: Oct 11 2018 19:14:35) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend TechnologiesЗапустите и включите сервис PHP-FPM:
sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.serviceСовет
- При проблемах с PHP-FPM проверьте логи: /var/log/php-fpm/error.log и системный журнал через journalctl -u php-fpm.service.
Шаг 2 — Установка MariaDB и создание базы данных для October
Установите MariaDB:
sudo yum install -y mariadb-serverПроверка версии MariaDB:
mysql --version
# mysql Ver 15.1 Distrib 5.5.60-MariaDB, for Linux (x86_64) using readline 5.1Запустите и включите сервис MariaDB:
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.serviceЗапустите скрипт безопасной настройки:
mysql_secure_installationВойдите в MariaDB как root:
mysql -u root -p
# Enter passwordСоздайте базу данных и пользователя для October (запомните учетные данные):
CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;Выйдите из консоли:
quitПримечание
- Используйте сильный пароль для пользователя базы данных. Храните его в безопасном менеджере паролей.
- Если планируете продакшн-сервер, настройте бэкапы и мониторинг состояния БД.
Шаг 3 — Установка acme.sh и получение сертификата Let’s Encrypt (опционально)
Защита сайта через HTTPS не обязательна, но настоятельно рекомендуется. В инструкции используется acme.sh — лёгкий shell-клиент без внешних зависимостей.
Скачайте и установите acme.sh:
sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail [email protected]
cd ~Проверьте версию:
/etc/letsencrypt/acme.sh --version
# v2.8.0Запросите RSA и ECDSA сертификаты для домена example.com:
# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength 2048
# ECDSA
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength ec-256После успешного запроса сертификаты и ключи будут в:
- RSA: /etc/letsencrypt/example.com
- ECC/ECDSA: /etc/letsencrypt/example.com_ecc
Совет по автоматизации
- Настройте cron или systemd timer для автоматического обновления сертификатов acme.sh –cron.
Шаг 4 — Установка и настройка Nginx
Установите Nginx:
sudo yum install -y nginxПроверьте версию Nginx:
nginx -v
# nginx version: nginx/1.12.2Запустите и включите Nginx:
sudo systemctl start nginx.service
sudo systemctl enable nginx.serviceСоздайте конфигурацию сайта в /etc/nginx/conf.d/october.conf и заполните её следующим блоком:
server {
listen [::]:443 ssl http2;
listen 443 ssl http2;
listen [::]:80;
listen 80;
server_name example.com;
index index.php index.html;
root /var/www/october;
ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;
location / {
try_files $uri /index.php$is_args$args;
}
location ~ \.php$ {
include fastcgi.conf;
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_read_timeout 120s;
}
rewrite ^themes/.*/(layouts|pages|partials)/.*.htm /index.php break;
rewrite ^bootstrap/.* /index.php break;
rewrite ^config/.* /index.php break;
rewrite ^vendor/.* /index.php break;
rewrite ^storage/cms/.* /index.php break;
rewrite ^storage/logs/.* /index.php break;
rewrite ^storage/framework/.* /index.php break;
rewrite ^storage/temp/protected/.* /index.php break;
rewrite ^storage/app/uploads/protected/.* /index.php break;
}Проверьте конфигурацию и перезагрузите Nginx:
sudo nginx -t
sudo systemctl reload nginx.serviceБезопасность
- Если используется SELinux, проверьте контексты файлов и разрешения для nginx и php-fpm.
- Откройте в фаерволе 80 и 443 (например, с помощью firewall-cmd).
Шаг 5 — Загрузка и установка October CMS
Создайте документ-рут и смените владельца на вашего пользователя для начальной распаковки:
sudo mkdir -p /var/www/october
sudo chown -R [your_user]:[your_user] /var/www/october
cd /var/www/octoberСкачайте инсталлятор October CMS и распакуйте:
wget http://octobercms.com/download -O october.zip
unzip october.zip
rm october.zip
mv install-master/* .Смените владельца на nginx для продакшн-окружения:
sudo chown -R nginx:nginx /var/www/octoberОтредактируйте конфигурацию PHP-FPM, чтобы пул выполнялся от пользователя nginx. Откройте /etc/php-fpm.d/www.conf и установите:
# user = nginx
# group = nginxПерезапустите PHP-FPM:
sudo systemctl restart php-fpm.serviceПерейдите в браузере к install.php (например, https://example.com/install.php) и следуйте инструкциям в веб-интерфейсе.
Шаг 6 — Завершение настройки October CMS
Убедитесь, что системная проверка пройдена, и нажмите “Agree & Continue”.

Настройте подключение к базе данных и учётную запись администратора.


Вы можете настроить дополнительные параметры или оставить значения по умолчанию.

Нажмите синюю кнопку “Continue” для продолжения.
На следующем шаге система спросит: “How do you want to set up your site?” — доступны три варианта: Start from scratch, Start from a theme, Use a project ID. Выберите подходящий вариант.

Административная панель доступна по адресу /backend (например, https://example.com/backend).
После завершения установки обязательно удалите установочные файлы:
sudo rm /var/www/october/install.php && sudo rm -rf /var/www/october/install_filesКритерии приёмки
- Веб-интерфейс установки открывается и проходит системную проверку.
- Подключение к базе данных успешно.
- Войдён в административный интерфейс /backend с заданными учётными данными.
- Установка инсталляционных файлов удалена.
Когда установка может не удаться — как диагностировать
- Ошибка 502/504 при обращении к PHP: проверьте, слушает ли php-fpm порт 9000 и совпадают ли настройки fastcgi_pass.
- Проблемы с правами файлов: убедитесь, что owner и права на /var/www/october корректны для nginx/php-fpm.
- Сертификат не найден: проверьте пути в конфиге nginx и наличие файлов в /etc/letsencrypt.
- Ошибки расширений PHP: убедитесь, что установлены обязательные расширения (pdo, mbstring, zip, gd и др.).
Быстрый SOP — команды для проверки
- Проверить доступность портов: ss -tlnp | egrep “:80|:443|:9000”
- Просмотреть логи nginx: sudo tail -n 100 /var/log/nginx/error.log
- Просмотреть логи php-fpm: sudo journalctl -u php-fpm.service –no-pager -n 200
- Проверить права: ls -la /var/www/october
Роли и чек-листы
DevOps / Системный администратор:
- Обновить систему, установить PHP-FPM и Nginx
- Настроить SSL и firewall
- Настроить бэкапы БД и файлов
Веб-разработчик:
- Проверить расширения PHP, настроить окружение
- Проверить права на файлы и владелец процесса PHP
Администратор сайта:
- Провести первичную настройку администратора в интерфейсе
- Удалить установочные файлы
- Настроить резервное копирование и роли пользователей
Советы по безопасности
- Удалите install.php и папку install_files после установки.
- Ограничьте доступ к /backend по IP (если возможно) или включите двухфакторную аутентификацию в админке, если доступно.
- Настройте регулярные бэкапы базы данных и файлов /storage.
Совместимость и миграция
- При переносе между серверами убедитесь в совместимости версий PHP и расширений.
- Экспортируйте базу данных и файлы storage, themes и plugins.
Ссылки
Краткое резюме
- Следуйте шагам: обновление ОС → PHP + расширения → MariaDB → acme.sh (опц.) → Nginx → распаковка October → веб-инсталляция.
- Проверьте права, SSL и удалите установочные файлы.
- Настройте бэкапы и мониторинг для продакшн-сайта.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента