Установка Bludit на Debian 9 с NGINX
Bludit — простая и быстрая flat-file CMS без базы данных. В этом руководстве показано, как установить Bludit на Debian 9 (stretch) с NGINX и PHP-FPM, получить TLS‑сертификат через acme.sh и выполнить базовую настройку безопасности и прав. Подойдёт для небольших сайтов и блогов; описаны альтернативы и контрольные списки для администратора и DevOps.
О чём статья
Это пошаговое руководство по установке Bludit на Debian 9 с использованием NGINX в качестве веб‑сервера и PHP‑FPM. Вы узнаете о предварительных требованиях, настройке времени, установке PHP, получении сертификата Let’s Encrypt через acme.sh, конфигурации NGINX, развертывании Bludit, завершении мастера установки и базовой защите сайта.
Основные требования
Убедитесь, что система соответствует этим требованиям:
- PHP версии 5.3 или новее с расширениями: mbstring, gd, dom, json.
- Веб‑сервер с поддержкой PHP (Nginx, Apache, Lighttpd, H2O и т. п.). В этом руководстве используется NGINX.
Предварительные шаги
- Debian 9 (stretch).
- Пользователь с sudo‑правами, не root.
Проверьте версию Debian:
lsb_release -ds
# Debian GNU/Linux 9.8 (stretch)Установите часовой пояс:
sudo dpkg-reconfigure tzdataОбновите пакеты системы:
sudo apt update && sudo apt upgrade -yУстановите набор утилит для администрирования:
sudo apt install -y curl wget vim git unzip socat apt-transport-httpsШаг 1 — установка PHP
Установите PHP и необходимые расширения:
sudo apt install -y php7.0 php7.0-cli php7.0-fpm php7.0-common php7.0-mbstring php7.0-zip php7.0-pgsql php7.0-sqlite3 php7.0-curl php7.0-gd php7.0-mysql php7.0-intl php7.0-json php7.0-opcache php7.0-xmlПроверить установленные модули PHP можно с помощью:
php -m
# Пример вывода:
# ctype
# curl
# exif
# fileinfo
# ...Проверка версии PHP:
php --version
# PHP 7.0.30-0+deb9u1 (cli) (built: Jun 14 2018 13:50:25) ( NTS )PHP‑FPM обычно стартует и включается в автозагрузку при установке на Debian 9.
Важно: PHP 7.0 устарел и больше не получает обновлений безопасности. Если возможно, используйте более новую версию PHP и соответствующие пакеты для вашей системы. В примерах ниже используются имена пакетов для Debian 9.
Шаг 2 — установка acme.sh и получение сертификата Let’s Encrypt (опционально)
HTTPS не обязателен, но настоятельно рекомендуется. Для получения TLS‑сертификатов используем 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
- ECDSA: /etc/letsencrypt/example.com_ecc
Примечание: при использовании acme.sh в режиме standalone убедитесь, что порт 80 свободен (NGINX нужно временно остановить) или используйте режим webroot.
Шаг 3 — установка и конфигурация NGINX
Установите NGINX из репозитория Debian:
sudo apt install -y nginxПроверьте версию NGINX:
sudo nginx -v
# nginx version: nginx/1.10.3Создайте файл конфигурации /etc/nginx/sites-available/bludit.conf и вставьте следующий пример (отредактируйте пути и server_name):
server {
listen 80;
listen 443 ssl;
ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;
server_name example.com;
root /var/www/bludit;
index index.php;
location ~ \\.php$ {
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
include fastcgi.conf;
}
location / {
try_files $uri $uri/ /index.php?$args;
}
location ^~ /bl-content/tmp/ { deny all; }
location ^~ /bl-content/pages/ { deny all; }
location ^~ /bl-content/databases/ { deny all; }
}Активируйте конфигурацию:
sudo ln -s /etc/nginx/sites-available/bludit.conf /etc/nginx/sites-enabled/Проверьте конфигурацию NGINX:
sudo nginx -tПерезагрузите NGINX:
sudo systemctl reload nginx.serviceВажно: если вы используете сертификаты через acme.sh, проверьте права доступа на каталоги /etc/letsencrypt, чтобы NGINX мог читать файлы сертификатов.
Шаг 4 — установка Bludit
Создайте директорию для сайта:
sudo mkdir -p /var/www/bluditПрисвойте права владельца вашему пользователю (замените {your_user} на имя вашего пользователя):
sudo chown -R {your_user}:{your_user} /var/www/bluditПерейдите в директорию:
cd /var/www/bluditСкачайте архив Bludit и распакуйте (проверьте актуальную версию на официальном сайте):
wget https://www.bludit.com/releases/bludit-3-8-1.zip
unzip bludit-3-8-1.zip
rm bludit-3-8-1.zip
mv bludit-3-8-1/* . && mv bludit-3-8-1/.* .
rmdir bludit-3-8-1Примечание: обновите URL загрузки, если доступна более свежая версия.
Далее измените владельца на www-data для корректной работы веб‑сервера:
sudo chown -R www-data:www-data /var/www/bluditШаг 5 — завершение установки через веб‑мастер
Откройте ваш сайт в браузере. При первом заходе вы будете перенаправлены на страницу выбора языка.

Задайте пароль для пользователя admin и нажмите установить. После успешной установки вы попадёте на фронтенд сайта.


Панель администратора доступна по адресу /admin:

Установка завершена. Удачного блогинга!
Безопасность и рекомендации по эксплуатации
- Права: каталоги с контентом и базой должны быть доступны только для веб‑сервера (обычно www-data).
- Ограничьте доступ к /bl-content/tmp, /bl-content/pages и /bl-content/databases через NGINX (см. пример выше).
- Регулярно обновляйте ядро Bludit, плагины и темы.
- Используйте HTTPS и автоматическое обновление сертификатов (cron для acme.sh).
- Делайте резервные копии каталога bl-content и конфигураций сервера.
Альтернативные подходы
- Apache: можно использовать Apache + PHP‑FPM (mod_proxy_fcgi) вместо NGINX.
- Docker: официальные/неофициальные контейнеры позволяют изолировать окружение и проще мигрировать.
- VPS‑хостинг с предустановленным PHP‑NGINX: ускоряет развертывание.
Когда Bludit не подходит
- Для больших сайтов с тысячами записей и высокой нагрузкой лучше использовать базу данных и CMS, оптимизированные для масштабирования.
- Для сложных многопользовательских решений с продвинутой ролевой моделью может потребоваться другая CMS.
Модель принятия решения
Mermaid диаграмма, помогающая выбрать между Bludit и альтернативами:
flowchart TD
A[Требуется простой блог или лендинг?] -->|Да| B[Bludit]
A -->|Нет| C[Нужна СУБД]
C --> D[WordPress или другая CMS с БД]
B --> E[Подходит для небольших сайтов]Быстрые контрольные списки
Для администратора
- Проверить владельца /var/www/bludit
- Настроить HTTPS
- Проверить права на директории bl-content
- Сделать первую резервную копию
Для DevOps
- Проверить конфигурацию NGINX и наличие ssl_certificate
- Настроить автоматическое обновление сертификатов
- Настроить мониторинг доступности и логов
Краткая методология обновления и отката
- Создать резервную копию каталога /var/www/bludit/bl-content и файла конфигурации NGINX.
- Проверить совместимость плагинов и темы с новой версией Bludit в тестовой среде.
- Обновить Bludit и плагины в нерабочее время.
- При ошибках восстановить резервную копию контента и конфигураций.
Факты и полезные пути
- Корневая директория: /var/www/bludit
- Конфигурации NGINX: /etc/nginx/sites-available/bludit.conf
- Сертификаты acme.sh: /etc/letsencrypt/
Совместимость и миграция
- Bludit хранит данные в JSON‑файлах — миграция на CMS с базой данных потребует экспорта/импорта.
- При обновлении PHP учитывайте совместимость расширений и версий Bludit.
Заметки по GDPR и приватности
Bludit как CMS не собирает данные сам по себе; ответственность за сбор и хранение персональных данных лежит на владельце сайта. При необходимости настройте политику конфиденциальности, SSL и локальную анонимизацию данных.
Короткое объявление проекта (100–200 слов)
Bludit — лёгкая flat‑file CMS для быстрого запуска сайта или блога. Без базы данных и сложной настройки, Bludit хранит контент в JSON‑файлах и позволяет быстро создать сайт на любом хостинге с поддержкой PHP. В этом руководстве описана поэтапная установка Bludit на Debian 9 с NGINX и PHP‑FPM, получение TLS‑сертификата через acme.sh и базовая настройка безопасности и прав. Подробные контрольные списки помогут администратору и DevOps подготовить производственную среду и настроить автоматическое обновление сертификатов и резервное копирование. Для небольших проектов и личных блогов Bludit обеспечивает быструю установку, простое управление контентом и гибкость благодаря темам и плагинам.
Социальный превью (предложения)
OG‑заголовок: Установка Bludit на Debian 9 с NGINX OG‑описание: Пошаговое руководство по установке и защите Bludit на Debian 9 с NGINX, PHP‑FPM и Let’s Encrypt.
Резюме
- Bludit — простая CMS без БД, подходит для небольших сайтов.
- Установка включает PHP, NGINX, (опционально) acme.sh для сертификатов и развертывание файлов Bludit.
- Обязательно настройте права, HTTPS и резервное копирование.
Ссылки
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента