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

Установка Neos CMS на Ubuntu 18.04

6 min read CMS Обновлено 23 Nov 2025
Установка Neos CMS на Ubuntu 18.04
Установка Neos CMS на Ubuntu 18.04

Общий план установки Neos CMS

Ключевые требования

  • Сервер с Ubuntu 18.04. (Подойдёт виртуальная машина, VPS или физический сервер.)
  • Установлен пароль root или доступ к учетной записи с sudo.
  • Базовые навыки работы в терминале и редактирования файлов (nano, vim).

Важно: если вы настраиваете систему в другой временной зоне, укажите её при настройке PHP (см. раздел про php.ini).

Кому полезно это руководство

  • Системным администраторам, которые разворачивают CMS на собственных серверах.
  • Разработчикам, которым нужно локально или на удалённом сервере поднять Neos.
  • Тем, кто хочет понять шаги настройки LAMP-стека для современного PHP-приложения.

Получение обновлений системы

Перед началом обновите пакеты системы:

apt-get update -y  
apt-get upgrade -y

После завершения обновления рекомендуется перезагрузить сервер, чтобы применить все изменения и новые ядра/модули.

Установка LAMP (Apache, MariaDB, PHP и зависимости)

Neos требует современную версию PHP и ряда расширений. В примере использована PHP 7.2 (как в исходном руководстве для Ubuntu 18.04).

Установите необходимые пакеты:

apt-get install apache2 mariadb-server php7.2 libapache2-mod-php7.2 php7.2-common php7.2-mysql php7.2-gmp php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-gd php7.2-bcmath php7.2-xml php7.2-cli php7.2-zip curl unzip git -y

Запустите и включите службы Apache и MariaDB:

systemctl start apache2  
systemctl start mariadb  
systemctl enable apache2  
systemctl enable mariadb

Изменение php.ini: откройте файл конфигурации для Apache-PHP и внесите рекомендованные правки:

nano /etc/php/7.2/apache2/php.ini

Найдите и измените (или добавьте) следующие строки:

short_open_tag = On
memory_limit = 256M
upload_max_filesize = 150M
max_execution_time = 360
date.timezone = Asia/Kolkata

Важно: значение date.timezone в примере — Asia/Kolkata. Замените его на свою зону (например, Europe/Moscow) в зависимости от местоположения сервера.

Сохраните и закройте файл.

Настройка 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 и создайте базу данных и пользователя для Neos:

mysql -u root -p

Внутри MariaDB выполните:

MariaDB [(none)]> CREATE DATABASE neosdb;  
MariaDB [(none)]> CREATE USER 'neos'@'localhost' IDENTIFIED BY 'mypassword';

Замените ‘mypassword’ на надёжный пароль. Затем выдайте привилегии:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON neosdb.* TO 'neos'@'localhost' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
MariaDB [(none)]> ALTER DATABASE neosdb charset=utf8;
MariaDB [(none)]> FLUSH PRIVILEGES;  
MariaDB [(none)]> EXIT;

Важно: используйте сильный пароль и, по возможности, управляйте доступом через привилегированные таблицы и бэкапы.

Далее измените конфигурацию MariaDB для улучшения совместимости с InnoDB (Barracuda):

nano /etc/myql/mariadb.conf.d/50-server.cnf

Добавьте:

innodb_file_format = Barracuda
innodb_large_prefix = 1
innodb_file_per_table = 1
innodb_default_row_format = dynamic

Сохраните, закройте и перезапустите MariaDB:

systemctl restart mariadb

Проверить статус службы можно так:

systemctl status mariadb

Ожидаемый вывод показывает, что сервис активен и работает.

Установка Neos CMS (через Composer)

Neos распределяется через Composer. Сначала установите Composer глобально:

curl -sS https://getcomposer.org/installer | php  
sudo mv composer.phar /usr/local/bin/composer

Перейдите в корневую папку веб-сервера и создайте проект Neos:

cd /var/www/html/
composer create-project --no-dev neos/neos-base-distribution neoscms

Присвойте владельца и права на каталог проекта:

chown -R www-data:www-data /var/www/html/neoscms/  
chmod -R 755 /var/www/html/neoscms/

Совет: если вы используете системный SFTP/FTP пользователь, корректируйте права соответственно, чтобы CI/CD и веб-сервер могли записывать в нужные каталоги (Data, Packages, var).

Настройка Apache для Neos

Создайте виртуальный хост:

nano /etc/apache2/sites-available/neoscms.conf

Вставьте конфигурацию виртуального хоста (из исходника):


     ServerAdmin [email protected]
     DocumentRoot /var/www/html/neoscms/Web
     ServerName example.com
     
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     

     ErrorLog ${APACHE_LOG_DIR}/neos_error.log
     CustomLog ${APACHE_LOG_DIR}/neos_access.log combined
    
     
            RewriteEngine on
            RewriteBase /
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*) index.php [PT,L]
    

Сохраните и закройте файл. Далее включите сайт и модуль rewrite:

a2ensite neoscms.conf  
a2enmod rewrite

Перезапустите Apache:

systemctl restart apache2

Проверить статус Apache:

systemctl status apache2

Ожидаемый вывод показывает, что apache2 активен (running).

Совет: если Apache жалуется на ServerName, добавьте строку ServerName example.com в /etc/apache2/apache2.conf или укажите фактическое доменное имя или IP.

Доступ к веб-интерфейсу установки Neos

Откройте в браузере:

http://example.com/setup

Вы будете перенаправлены на страницу установки. На старте Neos выдаст файл с паролем настройки:

/var/www/html/neoscms/Data/SetupPassword.txt

Далее будут шаги проверки требований, настройки подключения к БД и создания учетной записи администратора.

Экран входа Neos setup

Проверьте, что все требуемые расширения PHP отмечены как установленные, затем нажмите «Next».

Проверка зависимостей Neos

Введите параметры базы данных (имя базы данных, имя пользователя и пароль), затем создайте администратора и завершите установку.

Настройка базы данных Neos

Создание администратора Neos

После успешной установки вы попадёте на страницу завершения установки — перейдите в backend.

Успешная установка Neos

Страница входа Neos

Добро пожаловать в Neos

Краткий список действий (чек-лист)

  • Обновить систему (apt-get update/upgrade).
  • Установить Apache, MariaDB, PHP и нужные расширения.
  • Настроить php.ini (memory_limit, upload_max_filesize, timezone и т. п.).
  • Защитить MariaDB и создать базу/пользователя для Neos.
  • Применить рекомендуемые настройки InnoDB.
  • Установить Composer и создать проект Neos.
  • Назначить правильные права и владельца для папки проекта.
  • Создать виртуальный хост Apache и включить rewrite.
  • Перейти в /setup и закончить установку через веб-интерфейс.

Рекомендации по безопасности и жёсткая конфигурация

  • Удалите или ограничьте доступ к файлам установки после завершения (SetupPassword.txt и т. п.).
  • Настройте бэкапы базы данных и файлов (cron, rsync, remote storage).
  • Запретите прямой доступ к каталогу Neos Data и конфигурациям через .htaccess или настройки сервера.
  • Используйте HTTPS: настройте сертификат (Let’s Encrypt) и принудительное перенаправление на 443.
  • Отключите лишние модули Apache и сервисы, которые не используются.

Производительность и права файлов

  • Для большинства установок владелец веб-процесса должен быть www-data. Правильная комбинация:
    • Владелец: www-data
    • Права: 755 для директорий, 644 для файлов, исключая каталоги, где требуется запись (Data, var) — 775/770 по необходимости.
  • Рассмотрите использование OPcache и настройки PHP-FPM для повышения производительности.

Отладка и распространённые проблемы

  1. Не открывается /setup — проверьте права на папки и включён ли mod_rewrite.
  2. Ошибки подключения к базе — проверьте хост, порт, пользователя и пароль; попробуйте подключиться вручную через mysql client.
  3. Неполные PHP расширения — проверьте php -m и лог веб-сервера для ошибок.
  4. 500 Internal Server Error — смотрите журналы Apache (${APACHE_LOG_DIR}/neos_error.log) и PHP error_log.

Альтернативные подходы

  • Docker: можно развернуть Neos в контейнерах (PHP-FPM, Nginx/Apache, MariaDB) — удобно для изоляции и контрактов окружения.
  • Использование MySQL вместо MariaDB: Neos совместим с MySQL; команды создания базы схожи.
  • Использование более новой версии PHP (7.3/7.4) при поддержке дистрибутива, если ваш проект требует новых возможностей.

Роли и обязанности (краткие чек-листы)

Администратор сервера:

  • Обновление пакетов ОС и безопасности.
  • Управление пользователями и бэкапами.

DevOps-инженер:

  • Конфигурация CI/CD, права на каталоги, мониторинг процессов.
  • Настройка HTTPS и скриптов деплоя.

Разработчик:

  • Настройка локального окружения, Composer зависимости, миграции.
  • Отладка и перенос конфигураций в прод.

Модель принятия решений (когда выбирать Docker vs bare metal)

  • Если вам нужен быстрый перенос окружения и стабильность версий — Docker.
  • Если приоритет — производительность на железе и минимальная прослойка — bare metal / VM с прямой установкой.
flowchart TD
    A[Начало] --> B{Обновлён сервер?}
    B -- Нет --> C[apt-get update/upgrade]
    B -- Да --> D[Установить Apache/MariaDB/PHP]
    D --> E[Настроить php.ini]
    E --> F[Настроить MariaDB и создать БД]
    F --> G[Установить Composer и Neos]
    G --> H[Настроить Apache VirtualHost]
    H --> I[Перейти на /setup]
    I --> J[Завершить установку]
    J --> K[Готово]

Критерии приёмки

  • Страница http://example.com/setup доступна из браузера.
  • Проверка зависимостей в интерфейсе Neos проходит без ошибок.
  • Создана админ-учётная запись и выполнён вход в backend.
  • База данных содержит таблицы Neos и доступна приложению.

Небольшой словарь терминов (1‑строчная справка)

  • LAMP: стек Linux + Apache + MariaDB/MySQL + PHP.
  • Composer: менеджер пакетов для PHP.
  • VirtualHost: конфигурация виртуального хоста в Apache.

Заключение

Поздравляем — вы установили Neos CMS на Ubuntu 18.04. Теперь можно настраивать сайты, шаблоны и развёртывать контент-приложения. Если вы готовите продакшн-сервер, завершите настройку HTTPS, бэкапов и мониторинга.

Important: храните резервные копии и не оставляйте стандартные пароли.

Если возникнут конкретные ошибки, опишите шаг, лог и вывод команды — это поможет предложить точное решение.

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

  • Neos можно установить на Ubuntu 18.04 через Composer и стандартный LAMP-стек.
  • Обязательно настройте права, безопасный доступ к MariaDB и HTTPS для продакшн.
  • Используйте приведённые чек-листы и отладочные советы при возникновении проблем.
Поделиться: 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 — руководство