Установка DataLife Engine через SSH: профессиональная установка без FTP

15.12.2025
18:29

DataLife Engine (DLE) — популярная российская система управления контентом для создания новостных порталов, блогов и информационных сайтов. Традиционно DLE устанавливают через FTP-клиенты, загружая файлы по одному, что занимает много времени и подвержено ошибкам.

Профессиональный подход — установка полностью через SSH командную строку. Это быстрее, надёжнее и даёт полный контроль над процессом. В этом руководстве мы установим DLE на чистый сервер используя только терминал: скачаем дистрибутив, настроим базу данных, установим права доступа и запустим установочный скрипт.

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

Для установки DLE через SSH вам понадобится:

Сервер с установленным ПО:

  • Ubuntu 20.04+ / Debian 10+ (команды в статье для Debian/Ubuntu)
  • Apache 2.4+ или Nginx 1.18+
  • PHP 7.0+ (минимум), PHP 8.0+ (рекомендуется)
  • MySQL 5.5.3+ или MariaDB 10.0+ (минимум)
  • MySQL 5.7+ или MariaDB 10.3+ (рекомендуется)
  • SSH доступ с правами sudo

Необходимые PHP расширения:

  • mysqli
  • mbstring
  • gd
  • curl
  • zip
  • xml

Инструменты:

  • wget или curl для скачивания
  • unzip для распаковки архивов
  • nano или vim для редактирования файлов

Проверка установленного ПО:

Проверьте версию PHP:

php -v

Проверьте версию MySQL:

mysql --version

Проверьте установленные PHP расширения:

php -m | grep -E 'mysqli|mbstring|gd|curl|zip|xml'

Если какие-то расширения отсутствуют, установите их:

sudo apt update
sudo apt install php-mysql php-mbstring php-gd php-curl php-zip php-xml

Подготовка: создание директории и настройка окружения

Перейдите в директорию веб-сервера:

cd /var/www

Создайте директорию для сайта:

sudo mkdir -p dle-site

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

cd dle-site

Назначьте права на директорию:

sudo chown -R $USER:$USER /var/www/dle-site

Скачивание DataLife Engine

DLE — коммерческий продукт, поэтому у вас должна быть лицензия. После покупки вы получите ссылку на скачивание архива.

Вариант 1: Скачивание через wget

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

wget -O dle.zip "https://example.com/downloads/dle-xxxxx.zip"

Вариант 2: Скачивание через curl

Альтернативно используйте curl:

curl -L -o dle.zip "https://example.com/downloads/dle-xxxxx.zip"

Вариант 3: Загрузка с локального компьютера

Если архив уже на вашем компьютере, загрузите его через scp:

scp /path/to/dle.zip user@your-server.com:/var/www/dle-site/

Проверьте, что файл загружен:

ls -lh dle.zip

Ожидаемый вывод:

-rw-r--r-- 1 user user 15M Dec 13 10:00 dle.zip

Распаковка архива DLE

Установите unzip, если он не установлен:

sudo apt install unzip

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

unzip dle.zip

Проверьте содержимое:

ls -la

Типичная структура DLE после распаковки:

Upload/
Templates/
README.txt

Переместите содержимое директории Upload в корень:

mv Upload/* ./
mv Upload/.htaccess ./

Удалите теперь пустую директорию Upload:

rmdir Upload

Проверьте структуру файлов:

ls -la

Вы должны увидеть:

engine/
templates/
uploads/
index.php
.htaccess
...

Создание базы данных MySQL

Войдите в MySQL от имени root:

sudo mysql -u root -p

Создайте базу данных для DLE:

CREATE DATABASE dle_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Создайте пользователя базы данных:

CREATE USER 'dle_user'@'localhost' IDENTIFIED BY 'strong_password_here';

Предоставьте права пользователю:

GRANT ALL PRIVILEGES ON dle_db.* TO 'dle_user'@'localhost';

Примените изменения:

FLUSH PRIVILEGES;

Проверьте созданную базу:

SHOW DATABASES;

Выйдите из MySQL:

EXIT;

Генерация безопасного пароля:

Используйте openssl для генерации надёжного пароля:

openssl rand -base64 20

Сохраните сгенерированный пароль — он понадобится при установке.

Настройка прав доступа к файлам

DLE требует определённые права на файлы и директории для корректной работы.

Установите права на директории:

find /var/www/dle-site -type d -exec chmod 755 {} \;

Установите права на файлы:

find /var/www/dle-site -type f -exec chmod 644 {} \;

Установите специальные права для директорий, в которые DLE записывает данные:

chmod -R 777 /var/www/dle-site/templates
chmod -R 777 /var/www/dle-site/uploads
chmod 777 /var/www/dle-site/backup
chmod 777 /var/www/dle-site/engine/data
chmod 777 /var/www/dle-site/engine/cache
chmod 777 /var/www/dle-site/engine/cache/system

Важно: права 777 устанавливаются временно для установки. После завершения установки права будут ужесточены (см. раздел "Финальная настройка прав").

Сделайте файл конфигурации доступным для записи на время установки:

chmod 666 /var/www/dle-site/engine/data/dbconfig.php

Назначьте владельца файлов (замените www-data на вашего пользователя веб-сервера):

sudo chown -R www-dаta:www-data /var/www/dle-site

Проверьте права:

ls -la /var/www/dle-site/uploads

Настройка виртуального хоста Apache

Создайте конфигурационный файл для виртуального хоста:

sudo nano /etc/apache2/sites-available/dle-site.conf

Добавьте следующую конфигурацию:

<VirtualHost *:80>
    ServerName yourdomain.com
    ServerAlias www.yourdomain.com
    ServerAdmin admin@yourdomain.com

    DocumentRoot /var/www/dle-site

    <Directory /var/www/dle-site>
        Options -Indexes +FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

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

    # Опционально: включить сжатие
    <IfModule mod_deflate.c>
        AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/jаvascript application/jаvascript
    </IfModule>
</VirtualHost>

Сохраните файл (Ctrl+O, Enter, Ctrl+X).

Включите модуль rewrite для работы ЧПУ:

sudo a2enmod rewrite

Активируйте виртуальный хост:

sudo a2ensite dle-site.conf

Отключите стандартный хост (опционально):

sudo a2dissite 000-default.conf

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

sudo apache2ctl configtest

Ожидаемый вывод:

Syntax OK

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

sudo systemctl restart apache2

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

sudo systemctl status apache2

Настройка виртуального хоста Nginx (альтернатива Apache)

Если вы используете Nginx вместо Apache, создайте конфигурацию:

sudo nano /etc/nginx/sites-available/dle-site

Добавьте конфигурацию:

server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;

    root /var/www/dle-site;
    index index.php index.html;

    access_log /var/log/nginx/dle-access.log;
    error_log /var/log/nginx/dle-error.log;

    client_max_body_size 100M;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php8.0-fpm.sock;  # замените на вашу версию PHP (php8.1, php8.2 и т.д.)
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml|svg)$ {
        expires 30d;
        add_header Cache-Control "public, no-transform";
    }

    location ~ /\.ht {
        deny all;
    }

    location ^~ /engine/data/ {
        deny all;
    }

    location ^~ /backup/ {
        deny all;
    }
}

Создайте символическую ссылку для активации:

sudo ln -s /etc/nginx/sites-available/dle-site /etc/nginx/sites-enabled/

Удалите дефолтную конфигурацию (опционально):

sudo rm /etc/nginx/sites-enabled/default

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

sudo nginx -t

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

sudo systemctl restart nginx

Запуск установки DLE через браузер

Теперь DLE готов к установке через веб-интерфейс.

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

http://yourdomain.com/install.php

Или по IP-адресу:

http://your-server-ip/install.php

Проверка доступности установщика через curl:

Проверьте, что установщик доступен:

curl -I http://yourdomain.com/install.php

Ожидаемый ответ:

HTTP/1.1 200 OK

Автоматизация через конфигурационные файлы

Важно: DLE не предназначен для полной автоматизации установки через CLI. Установщик install.php генерирует конфигурационные файлы автоматически и может перезаписать ручные изменения.

Для автоматизации развёртывания рекомендуется:

Подготовьте окружение через CLI (скачивание, распаковка, права, база данных):

cd /var/www/dle-site
wget -O dle.zip "https://your-download-link.com/dle.zip"
unzip dle.zip
mv Upload/* ./

Создайте базу данных:

sudo mysql -e "CREATE DATABASE dle_db CHARACTER SET utf8mb4;"
sudo mysql -e "CREATE USER 'dle_user'@'localhost' IDENTIFIED BY 'password';"
sudo mysql -e "GRANT ALL ON dle_db.* TO 'dle_user'@'localhost';"

Установите права:

chmod -R 777 templates uploads backup engine/data engine/cache

Откройте браузер и завершите установку через install.php.

После установки вы можете редактировать engine/data/dbconfig.php для тонкой настройки:

nano /var/www/dle-site/engine/data/dbconfig.php

Основные константы в dbconfig.php:

<?php
define('DBHOST', 'localhost');
define('DBNAME', 'dle_db');
define('DBUSER', 'dle_user');
define('DBPASS', 'your_password');
define('PREFIX', 'dle');
define('COLLATE', 'utf8mb4_general_ci');

Эти параметры создаются установщиком автоматически.

Настройка .htaccess для ЧПУ

DLE поставляется с готовым файлом .htaccess, но можно его оптимизировать.

Откройте файл .htaccess:

nano /var/www/dle-site/.htaccess

Базовая конфигурация для ЧПУ уже должна быть в файле. Проверьте наличие:

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [L,QSA]

Добавьте защиту от прямого доступа к важным директориям (Apache 2.4):

# Запретить доступ к engine/data (Apache 2.4)
<FilesMatch "\.dat$">
    Require all denied
</FilesMatch>

# Запретить доступ к backup
<LocationMatch "^/backup/">
    Require all denied
</LocationMatch>

# Отключить просмотр директорий
Options -Indexes
# Запретить доступ к engine/data (Apache 2.4)
<FilesMatch "\.dat$">
    Require all denied
</FilesMatch>

# Запретить доступ к backup
<LocationMatch "^/backup/">
    Require all denied
</LocationMatch>

# Отключить просмотр директорий
Options -Indexes

Для Apache 2.2 используйте старый синтаксис:

<Files ~ "\.dat$">
    Order allow,deny
    Deny from all
</Files>

RedirectMatch 403 ^/backup/
Options -Indexes

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

Финальная настройка прав после установки

После завершения установки установите безопасные права на конфигурационный файл:

chmod 600 /var/www/dle-site/engine/data/dbconfig.php

Удалите файлы установщика для безопасности:

rm -f /var/www/dle-site/install.php
rm -f /var/www/dle-site/upgrade.php
rm -f /var/www/dle-site/update.php

Установите права на критичные директории:

chmod 755 /var/www/dle-site/engine/data
chmod 600 /var/www/dle-site/engine/data/*.php

Ужесточите права на uploads и другие директории (если не требуется загрузка/редактирование через веб):

chmod -R 755 /var/www/dle-site/templates
chmod -R 755 /var/www/dle-site/backup
chmod -R 775 /var/www/dle-site/engine/cache
chmod -R 775 /var/www/dle-site/uploads

Важно: если вы редактируете шаблоны через админку DLE, оставьте права 777 на templates. Для корректной работы сайта обычно достаточно, чтобы uploads и engine/cache были доступны на запись пользователю веб-сервера (775).

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

Проверьте главную страницу сайта:

curl -I http://yourdomain.com/

Ожидаемый ответ:

HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8

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

curl -I http://yourdomain.com/admin.php

Проверьте логи ошибок Apache:

sudo tail -f /var/log/apache2/dle-error.log

Для Nginx:

sudo tail -f /var/log/nginx/dle-error.log

Настройка SSL-сертификата (опционально)

Установите Certbot:

sudo apt install certbot python3-certbot-apache

Для Nginx:

sudo apt install certbot python3-certbot-nginx

Получите SSL-сертификат для Apache:

sudo certbot --apache -d yourdomain.com -d www.yourdomain.com

Для Nginx:

sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com

Проверьте автообновление сертификата:

sudo systemctl status certbot.timer

Устранение типичных проблем

Проблема: "Internal Server Error" при открытии сайта

Решение:

Проверьте логи ошибок:

sudo tail -50 /var/log/apache2/dle-error.log

Проверьте права на .htaccess:

ls -la /var/www/dle-site/.htaccess

Убедитесь, что модуль rewrite включён:

apache2ctl -M | grep rewrite

Проблема: Ошибка подключения к базе данных

Решение:

Проверьте, что MySQL запущен (на некоторых системах сервис называется mariadb):

sudo systemctl status mysql

Или для MariaDB:

sudo systemctl status mariadb

Проверьте подключение к БД:

mysql -u dle_user -p dle_db -e "SELECT 1;"

Проверьте данные в dbconfig.php:

grep -E "DBHOST|DBNAME|DBUSER|DBPASS" /var/www/dle-site/engine/data/dbconfig.php

Проблема: "Permission denied" при загрузке файлов

Решение:

Проверьте права на uploads:

ls -la /var/www/dle-site/uploads

Установите правильные права:

sudo chown -R www-dаta:www-data /var/www/dle-site/uploads
chmod -R 775 /var/www/dle-site/uploads
sudo chown -R www-dаta:www-data /var/www/dle-site/uploads

Важно: если проблема не решается, можно временно установить chmod -R 777, но обязательно верните безопасные права (775 или 755) после диагностики.

Проблема: ЧПУ не работает (404 ошибки)

Решение для Apache:

Проверьте, что AllowOverride установлен в All:

grep -r "AllowOverride" /etc/apache2/sites-available/dle-site.conf

Должно быть:

AllowOverride All

Проверьте, что mod_rewrite включён:

apache2ctl -M | grep rewrite

Решение для Nginx:

Проверьте блок try_files в конфигурации:

grep "try_files" /etc/nginx/sites-available/dle-site

Должно быть:

try_files $uri $uri/ /index.php?$args;

Проблема: Белый экран (White Screen of Death)

Решение:

Включите отображение ошибок временно:

nano /var/www/dle-site/index.php

Добавьте в начало файла:

<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);

Проверьте логи PHP:

sudo tail -f /var/log/php8.0-fpm.log

Проверьте лимиты PHP:

php -i | grep -E "memory_limit|max_execution_time|upload_max_filesize"

Оптимизация PHP для DLE

Отредактируйте php.ini:

sudo nano /etc/php/8.0/apache2/php.ini

Рекомендуемые настройки:

memory_limit = 256M
upload_max_filesize = 100M
post_max_size = 100M
max_execution_time = 300
max_input_time = 300

Для Nginx (PHP-FPM):

sudo nano /etc/php/8.0/fpm/php.ini

Перезапустите веб-сервер после изменений:

sudo systemctl restart apache2

Или для Nginx:

sudo systemctl restart php8.0-fpm
sudo systemctl restart nginx

Базовая настройка безопасности

Запретите выполнение PHP в uploads:

nano /var/www/dle-site/uploads/.htaccess

Добавьте (синтаксис для Apache 2.4):

<FilesMatch "\.php$">
    Require all denied
</FilesMatch>

Для Apache 2.2 с mod_access_compat используйте:

<FilesMatch "\.php$">
    Order Deny,Allow
    Deny from all
</FilesMatch>

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

ls -l /var/www/dle-site/engine/data/dbconfig.php

Отключите отображение версии PHP в заголовках:

sudo nano /etc/php/8.0/apache2/php.ini

Найдите и измените:

expose_php = Off

Чек-лист: быстрая установка DLE

Шаг 1. Подготовка:

cd /var/www
sudo mkdir dle-site && cd dle-site

Шаг 2. Скачивание и распаковка:

wget -O dle.zip "https://your-download-link.com/dle.zip"
unzip dle.zip
mv Upload/* ./

Шаг 3. База данных:

sudo mysql -u root -p
CREATE DATABASE dle_db CHARACTER SET utf8mb4;
CREATE USER 'dle_user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL ON dle_db.* TO 'dle_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Шаг 4. Права доступа:

find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
chmod -R 777 uploads backup engine/cache templates engine/data
sudo chown -R www-dаta:www-data /var/www/dle-site

Важно: права 777 устанавливаются временно для установки. После завершения установки через браузер обязательно выполните финальную настройку прав (см. шаг 7).

Шаг 5. Настройка веб-сервера:

sudo nano /etc/apache2/sites-available/dle-site.conf
sudo a2enmod rewrite
sudo a2ensite dle-site.conf
sudo systemctl restart apache2

Шаг 6. Установка через браузер:

http://yourdomain.com/install.php

Шаг 7. Финальная защита:

rm -f install.php upgrade.php update.php
chmod 600 engine/data/dbconfig.php
chmod 755 engine/data
chmod -R 755 templates backup
chmod -R 775 engine/cache uploads

Примечание: после установки обязательно ужесточите права согласно разделу "Финальная настройка прав".

Заключение

Вы успешно установили DataLife Engine полностью через командную строку SSH. Этот метод быстрее и надёжнее традиционной установки через FTP, даёт больший контроль над процессом и позволяет автоматизировать развёртывание.

Рекомендации:

  • Регулярно обновляйте DLE до последней версии
  • Настройте автоматическое резервное копирование базы данных и файлов
  • Используйте SSL-сертификат для защиты соединения
  • Следите за логами на предмет ошибок и попыток взлома
  • Отключайте неиспользуемые модули для повышения безопасности

Следующие шаги:

  • Настройте кеширование для ускорения сайта
  • Установите дополнительные модули и шаблоны
  • Настройте резервное копирование
  • Оптимизируйте базу данных MySQL
Содержание:
Закажите новый VPS со скидкой 15%
Любая локация на выбор. Стабильный сервер для ваших проектов по выгодной цене.
Выбрать VPS

Другие статьи

15.12.2025
235
База знаний / Инструкции
Установка Odoo с Docker на Ubuntu: полное руководство
15.12.2025
217
База знаний / Автоустановка скриптов
Как установить Odoo на VPS всего за пару минут
15.12.2025
253
База знаний / Инструкции
Файлы /etc/passwd и /etc/shadow: структура и работа