Установка OctoberCMS на Ubuntu 18.04
О чём эта статья
Это руководство проведёт вас через полный процесс установки OctoberCMS на сервер с Ubuntu 18.04. Подходит для веб-разработчиков, сисадминов и небольших команд студии. Приведены команды, конфигурационные правки и проверенные шаги, а также советы по отладке и безопасности.
Важно: в примерах использованы приватные IP 192.168.0.11 и 192.168.0.103 — убедитесь, что вы используете IP, соответствующий вашему серверу, и что записи совпадают в конфигурации Apache и требованиях.
Основные варианты запроса (SEO intent)
- Установка OctoberCMS на Ubuntu 18.04
- Как установить OctoberCMS на сервер Ubuntu
- OctoberCMS PHP Laravel установка
- Настройка OctoberCMS Apache MariaDB
Требования
- Сервер с Ubuntu 18.04 (доступ по SSH).
- Статический IP (в примере используется 192.168.0.11).
- Пароль root или пользователь с sudo-привилегиями.
Подготовка системы
Перед началом обновите пакеты и перезагрузите систему, чтобы применить обновления:
apt-get update -y
apt-get upgrade -yПосле выполнения перезагрузите сервер:
rebootУстановка Apache, MariaDB и PHP
Установите Apache, MariaDB, PHP 7.2 и необходимые модули одним пакетом:
apt-get install apache2 mariadb-server php7.2 libapache2-mod-php7.2 libapache2-mod-php7.2 php7.2-json php7.2-common php7.2-mbstring php7.2-xmlrpc php7.2-soap php7.2-gd php7.2-xml php7.2-intl php7.2-tidy php7.2-mysql php7.2-cli php7.2-ldap php7.2-pdo php7.2-zip php7.2-curl php7.2-sqlite3 unzip wget -yОткройте конфигурационный файл PHP для Apache и внесите рекомендуемые изменения:
nano /etc/php/7.2/apache2/php.iniИзмените или добавьте следующие параметры (ключевые значения):
file_uploads = On
allow_url_fopen = On
memory_limit = 256M
upload_max_filesize = 30M
post_max_size = 40M
max_execution_time = 60
max_input_vars = 1500Сохраните и выйдите. Затем запустите и включите службы Apache и MariaDB в автозагрузку:
systemctl start apache2
systemctl start mariadb
systemctl enable apache2
systemctl enable mariadbНастройка базы данных
По умолчанию MariaDB требует базовой защиты. Запустите скрипт безопасности:
mysql_secure_installationОтветьте на вопросы интерактивно. Примерный ответ из оригинального руководства:
Enter current password for root (enter for none):
Set root password? [Y/n]: N
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Затем войдите в оболочку MariaDB и создайте базу и пользователя для OctoberCMS (замените пароли на надёжные):
mysql -u root -p
MariaDB [(none)]> CREATE DATABASE octoberdb;
MariaDB [(none)]> CREATE USER 'october'@'localhost' IDENTIFIED BY 'password';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON octoberdb.* TO 'october'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;Совет безопасности: используйте сильный пароль, а затем ограничьте доступ по IP/файерволу при необходимости.
Установка OctoberCMS
Скачайте архив установщика OctoberCMS из репозитория GitHub и распакуйте его в корневую директорию веб-сервера:
wget https://codeload.github.com/octobercms/install/zip/master -O octobercms.zip
unzip octobercms.zip
mv install-master /var/www/html/octobercmsНазначьте корректные права и владельца:
chown -R www-data:www-data /var/www/html/octobercms
chmod -R 755 /var/www/html/octobercmsПримечание: для сред с SELinux дополнительно потребуются контексты и разрешения; в Ubuntu это обычно неактивно.
Настройка Apache для OctoberCMS
Создайте файл виртуального хоста Apache:
nano /etc/apache2/sites-available/octobercms.confВставьте следующую конфигурацию (проверьте адрес ServerName и при необходимости замените на ваш IP или домен):
ServerAdmin [email protected]
ServerName 192.168.0.103
DocumentRoot /var/www/html/octobercms/
Options +FollowSymlinks
AllowOverride All
Require all granted
ErrorLog /var/log/apache2/october_error.log
CustomLog /var/log/apache2/october_access.log combined
Сохраните и выйдите. Затем активируйте сайт и отключите стандартный виртуальный хост:
a2ensite octobercms
a2dissite 000-defaultВключите модуль rewrite и перезапустите Apache:
a2enmod rewrite
systemctl restart apache2Проверка статуса Apache:
systemctl status apache2Ожидаемый вывод (пример):
? apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Drop-In: /lib/systemd/system/apache2.service.d
??apache2-systemd.conf
Active: active (running) since Wed 2019-01-30 10:56:45 UTC; 6s ago
Process: 6498 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
Main PID: 6517 (apache2)
Tasks: 1 (limit: 1114)
CGroup: /system.slice/apache2.service
??6517 /usr/sbin/apache2 -k start
Jan 30 10:56:45 ubuntu1804 systemd[1]: Starting The Apache HTTP Server...
Jan 30 10:56:45 ubuntu1804 apachectl[6498]: AH00557: apache2: apr_sockaddr_info_get() failed for ubuntu1804
Jan 30 10:56:45 ubuntu1804 apachectl[6498]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. S
Jan 30 10:56:45 ubuntu1804 systemd[1]: Started The Apache HTTP Server.Если вы видите ошибки, проверьте логи в /var/log/apache2/ и корректность ServerName.
Доступ к установщику OctoberCMS
Откройте в браузере адрес установщика, например:
http://192.168.0.11/install.php
Вы увидите системную проверку и последовательность шагов установщика.


Убедитесь, что все проверки пройдены, примите лицензионное соглашение и введите параметры базы данных и администратора:


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

Выберите тему и установите плагины по необходимости:

Когда установка завершится, вы увидите страницу успешной установки:

Далее войдите в админ-панель:


Поздравляем — OctoberCMS установлен.
Важные замечания и отладка
- Убедитесь, что DNS/ServerName указывает на ваш сервер (если используете домен).
- Если установщик не запускается, проверьте права в /var/www/html/octobercms/storage и /var/www/html/octobercms/bootstrap/cache — они должны быть записываемы веб-сервером.
- В логах Apache (/var/log/apache2/) смотрите ошибки доступа и модуль rewrite.
Важно: если IP в требованиях и в конфигурации Apache не совпадают (например, 192.168.0.11 vs 192.168.0.103), исправьте ServerName в конфиге Apache на фактический IP/домен.
Безопасность и эксплуатация
Минимальные шаги по упрочению системы:
- Закройте доступ к MariaDB снаружи, если не нужно удалённое подключение (bind-address в my.cnf).
- Используйте файервол (ufw): разрешите порты 80 и 443, закройте остальные.
- Настройте HTTPS (Let’s Encrypt certbot) и перенаправление HTTP→HTTPS.
- Регулярно обновляйте OS и PHP-пакеты.
- Ограничьте права файлов: только www-data должен иметь права записи в storage и cache.
Пример быстрых правил UFW:
ufw allow OpenSSH
ufw allow 'Apache Full'
ufw enableРезервное копирование и откат
Рекомендации:
- Бэкап базы: mysqldump –single-transaction –routines –triggers –events
- Бэкап файлов: tar/rsync каталога /var/www/html/octobercms и конфигов Apache.
- Перед обновлениями плагинов создавайте снапшоты БД и файлов.
Когда OctoberCMS может не подойти (противопоказания)
- Если нужен SaaS с многопользовательской схемой на уровне платформы: лучше рассмотреть специализированные решения.
- Если требуется поддержка PHP 8+ и вы не готовы к портированию — проверяйте совместимость плагинов.
- Для очень крупных корпоративных порталов с высокими SLA может понадобиться более масштабируемая архитектура и CDN.
Альтернативные подходы
- Установка через Composer (если доступна совместимая сборка) — удобнее для автоматизации и CI/CD.
- Контейнеризация: запуск в Docker-контейнере с преднастроенными образами Apache/Nginx, PHP-FPM и MariaDB.
- Использование Nginx вместо Apache: потребуется адаптировать правила перенаправления и root-директории.
Чеклисты по ролям
Администратор сервера (DevOps):
- Обновить систему и создать пользователя с sudo.
- Настроить SSH-ключи и отключить вход по паролю.
- Установить и настроить UFW, разрешить HTTP/HTTPS и SSH.
- Настроить резервное копирование и мониторинг.
Разработчик:
- Проверить совместимость PHP-версий и расширений.
- Настроить локальную среду (Docker/VM) для разработки.
- Тестировать плагины и тему на стейджинге перед продом.
Контент-менеджер / Администратор OctoberCMS:
- Пройти первичный вход и настроить пользователя администратора.
- Установить и протестировать необходимые плагины и тему.
- Создать контрольный пост/страницу для проверки рендера.
Мини-методология развертывания в прод
- Подготовка окружения (OS, бэкапы, безопасность).
- Развёртывание экземпляра в staging, тестирование плагинов и тем.
- Миграция контента и данных; тестирование производительности.
- Переключение DNS/перенаправление трафика и включение мониторинга.
Критерии приёмки
- Установщик завершился без ошибок.
- Доступ к фронтенду и админке по HTTPS.
- Возможность авторизации администратора и создания записи.
- Резервная копия БД и файлов создана и проверена.
Краткий словарь (1 строка)
- OctoberCMS — модульная CMS на PHP, использующая элементы Laravel, ориентированная на разработчиков и небольшие студии.
Когда обращаться за помощью
Если установка даёт неожиданные ошибки, соберите логи: /var/log/apache2/, /var/log/mysql/ и сообщения PHP (error_log). Эти данные помогут быстро локализовать проблему.
Итог
Вы установили OctoberCMS на Ubuntu 18.04 и настроили базовые компоненты: Apache, MariaDB и PHP. Следующие шаги — настроить HTTPS, протестировать плагины и внедрить процесс резервного копирования и обновлений.
Спасибо за внимание. Если нужно, предоставлю инструкции по установке через Docker или по настройке HTTPS с Let’s Encrypt.
Похожие материалы
Herodotus — Android‑троян и защита
Как включить новый Пуск в Windows 11
Панель полей сводной таблицы в Excel — быстрый разбор
Включение нового меню Пуск в Windows 11
Дубликаты Диспетчера задач в Windows 11 — как исправить