Установка PageKit CMS на Ubuntu 18.04 с Apache

PageKit — лёгкая бесплатная CMS на PHP с удобным интерфейсом. В этой инструкции показано, как установить PageKit на сервер с Ubuntu 18.04, настроить Apache, MariaDB и PHP, подготовить базу данных и пройти веб-инсталлятор. Следуйте шагам последовательно, проверьте безопасность MariaDB и используйте корректные права доступа к файлам.
Что вы получите
- Рабочий сайт на PageKit под управлением Apache и MariaDB.
- Пример конфигурации Apache для виртуального хоста.
- Рекомендации по безопасности и проверочные шаги.
Основные требования
- Сервер с Ubuntu 18.04.
- Непользователь root с правами sudo.
- Доступ к терминалу и интернету для загрузки пакетов.
Краткий план работ
- Обновить систему. 2. Установить Apache, MariaDB, PHP и необходимые расширения. 3. Настроить php.ini. 4. Защитить и подготовить MariaDB. 5. Скачать PageKit и развернуть в веб-каталоге. 6. Создать виртуальный хост Apache. 7. Пройти веб-инсталлятор PageKit.
Подготовка системы
Обновите пакеты и установите обновления безопасности:
sudo apt-get update -y
sudo apt-get upgrade -yПосле обновления рекомендуется перезагрузить систему, чтобы все обновления вступили в силу.
Установка Apache, MariaDB и PHP
PageKit написан на PHP и использует MariaDB для хранения данных. Установите веб-сервер и все необходимые модули PHP одной командой:
sudo apt-get install apache2 mariadb-server php7.2 libapache2-mod-php7.2 php7.2-common php7.2-sqlite php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-mysql php7.2-gd php7.2-xml php7.2-cli php7.2-zip wget unzip -yПосле установки откройте файл конфигурации PHP для Apache и внесите рекомендуемые изменения. Если вы находитесь в другом часовом поясе — замените значение date.timezone на ваш.
sudo nano /etc/php/7.2/apache2/php.iniИзмените или добавьте следующие параметры:
memory_limit = 300M
allow_url_fopen = On
upload_max_filesize = 200M
max_execution_time = 400
date.timezone = Asia/KolkataСохраните файл и перезапустите службы Apache и MariaDB, а также включите их автозапуск:
sudo systemctl restart apache2
sudo systemctl restart mariadb
sudo systemctl enable apache2
sudo systemctl enable mariadbВажно
- Параметр upload_max_filesize и memory_limit подбирайте под нагрузку и доступную память сервера. 300M и 200M — ориентиры.
- date.timezone замените на свой регион, например Europe/Moscow, если применимо.
Подготовка и защита MariaDB
По умолчанию MariaDB не жестко защищена. Запустите скрипт безопасности и следуйте подсказкам:
sudo 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 и создайте базу данных и пользователя для PageKit. Замените password на надёжный пароль.
mysql -u root -pВнутри MariaDB:
MariaDB [(none)]> CREATE DATABASE pagekitdb;
MariaDB [(none)]> CREATE USER pagekit;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON pagekitdb.* TO 'pagekit'@'localhost' IDENTIFIED BY 'password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exitРекомендации по безопасности базы данных
- Используйте сложный пароль и храните его в менеджере паролей.
- Если базу данных нужно открывать извне, настройте доступ по IP и используйте SSL.
- Регулярно делайте бэкапы (mysqldump, автоматические задания cron).
Скачивание PageKit
Загрузите актуальный дистрибутив PageKit и распакуйте в корень веб-сервера:
wget https://pagekit.com/api/download/latest -O pagekit.zip
sudo unzip pagekit.zip -d /var/www/html/pagekitДайте корректные права. В исходной инструкции использовалась chmod 777 — это небезопасно в продакшне. Вместо этого рекомендуем дать владельца веб-сервера и более узкие права:
sudo chown -R www-data:www-data /var/www/html/pagekit/
sudo find /var/www/html/pagekit/ -type d -exec chmod 755 {} \;
sudo find /var/www/html/pagekit/ -type f -exec chmod 644 {} \;Если PageKit требует запись в некоторые папки (cache, storage и т.д.), установите для них права 775:
sudo chmod -R 775 /var/www/html/pagekit/storage /var/www/html/pagekit/cacheВажно
- Использование 777 ставит риск выполнения произвольного кода; избегайте этого на общедоступных серверах.
Конфигурация Apache для PageKit
Создайте виртуальный хост для вашего сайта. Замените example.com на ваш домен.
sudo nano /etc/apache2/sites-available/pagekit.confДобавьте конфигурацию:
ServerAdmin [email protected]
DocumentRoot /var/www/html/pagekit
ServerName example.com
Options FollowSymlinks
AllowOverride All
Require all granted
ErrorLog ${APACHE_LOG_DIR}/pagekit_error.log
CustomLog ${APACHE_LOG_DIR}/pagekit_access.log combined
Включите сайт и модуль перезаписи URL, затем перезапустите Apache:
sudo a2ensite pagekit
sudo a2enmod rewrite
sudo systemctl restart apache2Проверка
- Проверьте конфигурацию Apache на ошибки: sudo apache2ctl configtest
- Убедитесь, что DNS указывает на ваш сервер, либо добавьте временный хост в /etc/hosts для теста.
Веб-инсталлятор PageKit
Откройте в браузере URL вашего сайта, например http://example.com. Вы увидите веб-инсталлятор.

- Нажмите стрелку для начала установки.
- Выберите язык и нажмите NEXT.

- На этапе подключения к базе укажите созданные ранее pagekitdb, имя пользователя pagekit и пароль.

- Укажите заголовок сайта, учётную запись администратора и пароль, затем нажмите INSTALL.

- После успешной установки выполните вход в административную панель.

- Вы попадёте в дашборд PageKit.

Поздравляем — PageKit установлен.
Критерии приёмки
- Веб-инсталлятор доступен по указанному домену.
- Установлен и работает виртуальный хост Apache.
- PageKit подключился к базе данных и завершил установку без ошибок.
- Доступ в админ-панель под заданной учётной записью.
- Права доступа к файлам настроены безопасно (без 777 для всех файлов).
Тесты и проверочные сценарии
- Попытка входа в админ-панель с неправильно введённым паролем должна завершаться неудачей.
- Проверка страниц сайта в режиме инкогнито для подтверждения публичного доступа.
- Проверка записи файлов: загрузите изображение через админку и убедитесь, что файл сохраняется.
План отката
- Если инсталляция прошла с ошибками — удалите папку /var/www/html/pagekit и восстановите из бэкапа.
- Откат настроек Apache: sudo a2dissite pagekit && sudo systemctl reload apache2.
- Восстановите базу данных из дампа: mysql -u root -p pagekitdb < backup.sql.
Рекомендации по безопасности и соответствию
- Настройте HTTPS с помощью Let’s Encrypt: certbot –apache.
- Запретите доступ к каталогу .git и файлам конфигурации.
- Следите за обновлениями PHP и PageKit.
- Если вы обрабатываете персональные данные жителей ЕС, обеспечьте соответствие требованиям GDPR: минимизируйте хранение личных данных, используйте шифрование и обновляйте политику конфиденциальности.
Когда этот подход не подходит
- Если вам нужна CMS с длительной поддержкой и активными релизами, PageKit может быть не лучшим выбором — рассмотрите WordPress или Drupal.
- Если вы используете контейнеры или оркестрацию (Docker/Kubernetes), имеет смысл подготовить контейнерный образ вместо установки на хост-систему.
Альтернативные подходы
- Установка на Nginx вместо Apache: потребуется конфигурация server block и PHP-FPM.
- Использование MariaDB на отдельном сервере: настройте удалённые подключения и SSL.
- Развёртывание в контейнере Docker с готовым стеком LEMP/LAMP.
Контрольные списки
Чек-лист перед установкой:
- Обновлённый Ubuntu 18.04.
- Наличие sudo-доступа.
- Резервные копии важных данных.
- DNS-запись домена настроена (если используется домен).
Чек-лист после установки:
- Настроен виртуальный хост Apache.
- Настроены права на файлы (без 777).
- Проверена работоспособность сайта и админки.
- Активирован HTTPS.
- Настроен бэкап базы данных.
Частые проблемы и способы их решения
- 500 Internal Server Error при доступе к сайту: проверьте логи Apache (${APACHE_LOG_DIR}/pagekit_error.log) и права доступа к файлам.
- Ошибка подключения к БД: проверьте имя базы, пользователя и пароль в веб-инсталляторе; убедитесь, что пользователь создан и имеет привилегии.
- Невозможность загрузить файл: проверьте upload_max_filesize в php.ini и права на папки storage/uploads.
Краткое резюме
- PageKit можно быстро развернуть на Ubuntu 18.04 с Apache и MariaDB.
- Важна безопасная настройка прав и защита MariaDB.
- Рассмотрите альтернативы и контейнеризацию при масштабировании.
Полезные ссылки
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента