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

Установка Feng Office Community на Debian 10

• 7 min read • Инструкции • Обновлено 24 Nov 2025
Feng Office на Debian 10 — установка и настройка
Feng Office на Debian 10 — установка и настройка

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

О чём статья

Эта инструкция шаг за шагом покажет, как установить Feng Office Community Edition на VPS с Debian 10. Подробно описаны подготовка системы, установка веб-стека, настройка PHP 7.1 (рекомендуется для совместимости), создание базы данных, развертывание файлов приложения, конфигурация Apache, получение SSL от Let’s Encrypt, а также рекомендации по безопасности и тестированию.

Предварительные требования

  • Сервер с Debian 10, минимум 2 ГБ оперативной памяти. Для продакшена рекомендуется 4 ГБ и больше.
  • Домен, указывающий на IP сервера (в примерах используется example.com). Настройте DNS A-запись заранее.
  • Настроен root-пароль или пользователь с sudo.

Что такое Feng Office (одно предложение)

Feng Office — это веб-приложение с открытым исходным кодом для управления проектами, задачами, временем и взаимодействия с клиентами.

Начало: обновление системы

Перед установкой обновите пакеты и перезагрузите систему, если это необходимо:

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

Перезагрузите сервер, чтобы применить важные обновления:

reboot

Установка Apache и MariaDB

Установите веб-сервер Apache и СУБД MariaDB:

apt-get install apache2 mariadb-server -y

Запустите и включите автозапуск сервисов:

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

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

systemctl status apache2

Если видите ошибку про FQDN — это предупреждение; для устранения укажите корректный ServerName в /etc/apache2/apache2.conf.

Установка и настройка PHP 7.1

Примечание: Debian 10 поставляется с PHP 7.3 по умолчанию. Feng Office в описании требует PHP 7.1, поэтому используем репозиторий SURY.

Установите вспомогательные пакеты:

apt-get install software-properties-common ca-certificates apt-transport-https -y

Добавьте GPG ключ и репозиторий SURY:

wget https://packages.sury.org/php/apt.gpg
apt-key add apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php7.list
apt-get update -y

Установите PHP 7.1 и необходимые модули (команда может быть длинной):

apt-get install php7.1 php7.1-mysql php7.1-curl php7.1-json php7.1-cgi libapache2-mod-php7.1 php7.1-mcrypt php7.1-xmlrpc php7.1-gd php7.1-mbstring php7.1-common php7.1-soap php7.1-xml php7.1-intl php7.1-cli php7.1-ldap unzip php7.1-zip wget php7.1-readline php7.1-imap php7.1-tidy php7.1-recode php7.1-sq -y

Если какие-то пакеты не находятся, проверьте корректность подключения репозитория SURY и версию Debian.

Откройте и отредактируйте php.ini для CLI:

nano /etc/php/7.1/cli/php.ini

Установите (или измените) значения:

max_execution_time = 300
max_input_time = 300
memory_limit = 512M
post_max_size = 128M
upload_max_filesize = 128M
html_errors = Off
display_startup_errors = Off
log_errors = On
output_buffering = Off

Сохраните и закройте файл. Повторите те же изменения для конфигурации Apache:

nano /etc/php/7.1/apache2/php.ini

После изменения перезапустите Apache:

systemctl restart apache2

Дополнительные утилиты, требуемые Feng Office:

apt-get install catdoc xpdf ghostscript imagemagick wkhtmltopdf -y

Важно: wkhtmltopdf часто нужен в версии, совместимой с вашей системой. Если у вас проблемы с генерацией PDF, проверьте версию wkhtmltopdf.

Конфигурация MariaDB для Feng Office

Вход в MySQL/MariaDB:

mysql -u root -p

Создайте базу и пользователя (замените password на надёжный пароль):

CREATE DATABASE fengdb;
GRANT ALL PRIVILEGES ON fengdb.* TO 'fenguser'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;

Советы по безопасности базы данных:

  • Используйте уникальный сложный пароль.
  • При необходимости ограничьте доступ по IP для удалённого подключения.
  • Делайте регулярные экспортные бэкапы (см. раздел Бэкапы ниже).

Загрузка Feng Office

Скачайте последнюю доступную версию (в примере используется URL с перенаправлением на последнюю сборку):

wget -O fengoffice.zip --no-check-certificate https://www.fengoffice.com/web/reference.php?dest=latest_version

Распакуйте архив:

unzip fengoffice.zip

Переместите каталог в корень веб-сайта Apache и установите права:

mv fengoffice-3.7.0.5 /var/www/html/fengoffice
chown -R www-data:www-data /var/www/html/fengoffice
chmod -R 755 /var/www/html/fengoffice

Примечание: исходная инструкция предлагала chmod 777. Это небезопасно в продакшен. Лучший вариант — 755 для директорий и 644 для файлов, с владельцем www-data.

Если приложение требует записи в конкретные папки, назначьте для них 775 и владельца www-data:

find /var/www/html/fengoffice -type d -exec chmod 755 {} \;
find /var/www/html/fengoffice -type f -exec chmod 644 {} \;
chmod -R 775 /var/www/html/fengoffice/cache /var/www/html/fengoffice/logs /var/www/html/fengoffice/uploads
chown -R www-data:www-data /var/www/html/fengoffice

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

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

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

Вставьте следующую конфигурацию (замените example.com на ваш домен и [email protected] на реальный email):


     ServerAdmin [email protected]
     DocumentRoot /var/www/html/fengoffice
     ServerName example.com

     
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined

Разрешите сайт и необходимые модули:

a2ensite feng.conf
a2enmod rewrite
a2enmod headers
systemctl restart apache2

Проверьте корректность конфигурации Apache:

apachectl configtest

Если конфигурация корректна, вы увидите Syntax OK.

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

Откройте браузер и перейдите по адресу http://example.com. Установщик проведёт проверку окружения, соединения с базой данных и предложит выбрать модули.

Стартовый экран установщика Feng Office

На экране установщика нажмите Next для перехода к проверкам окружения:

Проверка окружения и требований

Проверьте, чтобы все пункты были отмечены как прошедшие. Затем укажите параметры подключения к базе данных:

Подключение к базе данных

Укажите имя БД, пользователя и пароль. Выберите модули Core_dimensions и Workspaces (или другие по необходимости). Завершите установку и создайте административную учётную запись:

Завершение установки

После установки выполните вход в систему:

Форма входа Feng Office

Если всё успешно, вы увидите панель управления:

Дашборд Feng Office после установки

Защита сайта с помощью Let’s Encrypt (бесплатный SSL)

Установка Certbot и автоматическое получение сертификата для Apache:

add-apt-repository ppa:certbot/certbot
apt-get update -y
apt-get install certbot python-certbot-apache -y
certbot --apache -d example.com

Во время выполнения вам предложат ввести email и выбрать перенаправление HTTP -> HTTPS. Рекомендуется выбрать перенаправление (Redirect).

Проверка автоматического обновления сертификата:

certbot renew --dry-run

Если тест проходит, автоматическое обновление настроено; Certbot обычно добавляет cron или systemd таймер.

Тестирование и проверка работоспособности

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

  • Сайт открывается по HTTPS без предупреждений.
  • Установщик завершился успешно, и можно войти под созданным администратором.
  • Основные функции (создание проекта, задач, загрузка файлов, экспорт PDF) работают без ошибок.
  • Логи Apache и PHP не содержат критических ошибок.

Мини-методология тестирования (быстрая проверка):

  1. Войти как админ. Создать тестовый проект и задачу.
  2. Прикрепить файл и проверить загрузку/просмотр.
  3. Сгенерировать PDF (если используется wkhtmltopdf) и проверить результат.
  4. Проверить работу календаря и тайм-трекинга.
  5. Просмотреть системные логи: /var/log/apache2/error.log и логи PHP.

Тест-кейсы (кратко):

  • TC-01: Логин/логаут администратора.
  • TC-02: Создание проекта и видимость для пользователя.
  • TC-03: Загрузка файла >10 МБ и проверка лимитов.
  • TC-04: Экспорт задачи в PDF.

Резервное копирование и обновления

Резервное копирование (рекомендуемая частота: ежедневно или по изменениям):

  • База данных: дамп MySQL:
mysqldump -u root -p fengdb > /root/backups/fengdb-$(date +%F).sql
  • Файлы: архив каталога приложения и пользовательских загрузок:
tar -czvf /root/backups/fengoffice-files-$(date +%F).tar.gz /var/www/html/fengoffice

Playbook обновления (общий):

  1. Создать бэкап базы и файлов.
  2. Вывести сайт в режим обслуживания (maintenance) при необходимости.
  3. Загрузить новую версию Feng Office или применить обновления через встроенный механизм.
  4. Проверить работоспособность и логи.
  5. Откат при проблемах (восстановление бэкапов).

Безопасность и жёсткая конфигурация

Рекомендации по безопасности:

  • Не делайте chmod 777 на каталоге приложения. Используйте владельца www-data и права 755/644.
  • Закройте неиспользуемые порты в брандмауэре (ufw):
ufw allow OpenSSH
ufw allow 'Apache Full'
ufw enable
  • Установите Fail2Ban для защиты от брутфорса (SSH и, при необходимости, панели входа):
apt-get install fail2ban -y
  • Ограничьте доступ к панели администрирования по IP (если возможно) через правила Apache.
  • Регулярно обновляйте OS и компоненты стека.

Типичные проблемы и их решения

  1. Ошибка подключения к базе данных:

    • Проверьте правильность имени БД, пользователя и пароля в установщике.
    • Убедитесь, что MariaDB слушает локально и пользователь имеет привилегии.
  2. Ошибки PHP (модули отсутствуют):

    • В логах будет указано, какой модуль отсутствует. Установите недостающий пакет через apt.
  3. wkhtmltopdf генерирует пустой PDF или с ошибками:

    • Попробуйте установить статическую сборку wkhtmltopdf для вашей архитектуры или обновите пакет.
  4. Права доступа (500/403 ошибки):

    • Проверьте владельца и права файлов/папок, особенно для cache/uploads/logs.
  5. SSL не применяется после certbot:

    • Проверьте конфигурацию Apache и наличие включённых virtual host для :443. Посмотрите журналы /var/log/letsencrypt.

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

  • Docker: запуск Feng Office в контейнере упрощает изоляцию зависимостей и позволяет выбрать конкретную версию PHP. Подходит для тестовых и продакшен сред.
  • Использовать более свежие версии PHP и адаптировать код/шаблоны, если приложение поддерживает их.
  • Развернуть через управляемый PaaS, если вы хотите минимизировать администрирование инфраструктуры.

Контрпримеры / когда инструкция не подойдёт:

  • Если у вас уже есть сервер с PHP 8.x и вы не хотите менять версию, возможно, Feng Office старой версии не совместим; рассмотрите контейнеризацию или обновлённые форки.
  • На маленьких VPS с 512 МБ RAM система может работать медленно; увеличьте ресурсы.

Роли и проверки (короткие чек-листы)

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

  • Подготовить DNS и сервер.
  • Выполнить установку и SSL.
  • Проверить бэкапы и безопасность.

DevOps:

  • Проверить логи и мониторинг.
  • Настроить автоматические обновления сертификатов и бэкапы.

Пользователь:

  • Зарегистрироваться и проверить создание проектов и задач.
  • Тестировать загрузку и экспорт файлов.

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

  • Веб-интерфейс доступен по HTTPS.
  • Админ может создать проекты, задачи и загрузить файлы.
  • Резервная копия БД и файлов сделана и проверена на восстановление.
  • Нет критических ошибок в логах после тестов.

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

Вы установили Feng Office на Debian 10, настроили PHP 7.1, Apache и MariaDB, развернули файлы в /var/www/html/fengoffice и защитили сайт Let’s Encrypt. Включите регулярные бэкапы, мониторинг и правила безопасности для надёжной работы.

Примечание

Если вы планируете работать с большим объёмом данных или многочисленными пользователями, рассмотрите масштабирование базы данных, разделение компонентов на отдельные серверы и использование балансировщика нагрузки.

Быстрый список команд (cheat sheet)

apt-get update -y
apt-get upgrade -y
apt-get install apache2 mariadb-server -y
# SURY repo
wget https://packages.sury.org/php/apt.gpg
apt-key add apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php7.list
apt-get update -y
apt-get install php7.1 libapache2-mod-php7.1 php7.1-mysql php7.1-xml php7.1-mbstring -y
# Feng Office
wget -O fengoffice.zip --no-check-certificate https://www.fengoffice.com/web/reference.php?dest=latest_version
unzip fengoffice.zip
mv fengoffice-3.7.0.5 /var/www/html/fengoffice
chown -R www-data:www-data /var/www/html/fengoffice
# Certbot
add-apt-repository ppa:certbot/certbot
apt-get update -y
apt-get install certbot python-certbot-apache -y
certbot --apache -d example.com

Авторская заметка: при выполнении на реальном сервере замените example.com и пароли на ваши значения и проверяйте логи при возникновении ошибок.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро