Как установить Elgg на Debian 11

Elgg — это бесплатный движок для социальных сетей с открытым исходным кодом, который легко устанавливается и настраивается, а затем используется для работы вашей социальной сети. Elgg построен на PHP и основан на паттерне проектирования MVC (Model-View-Controller). Для хранения данных используется база данных MySQL/MariaDB.

Необходимые условия

  • Веб-сервер Apache или Nginx с поддержкой перезаписи URL-адресов
  • PHP (версия 8.0 или лучше) с графической библиотекой GD и библиотекой расширения mbstring.
  • MySQL/MariaDB, установленная на вашем VPS Debian.

Шаг 1. Обновление системы

Прежде чем приступить к установке, необходимо обновить системные пакеты до последней доступной версии:

# apt-get update && apt-get upgrade

Шаг 2. Установите Nginx

Для установки веб-сервера Nginx выполните следующую команду:

# apt install nginx

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

# systemctl status nginx

Шаг 3. Установите PHP

Последняя версия Elgg требует наличия PHP версии «>= 8.0.0».   Сначала добавьте GPG-ключ и репозиторий с помощью следующих команд:

# apt -y install lsb-release apt-transport-https ca-certificates 
# wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
# echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list
# apt-get update

После добавления ключа PHP и репозитория можно установить PHP с расширениями с помощью этой длинной команды:

# apt install php8.2 php8.2-common php8.2-curl php8.2-fpm php8.2-imap php8.2-cli php8.2-xml php8.2-zip php8.2-mbstring php8.2-gd php8.2-mysql

После успешной установки проверьте версию PHP:

# php -v

Вы должны получить следующий результат:

Шаг 4: Установка MariaDB

Установить MariaDB можно с помощью следующей команды:

# apt install mariadb-server mariadb-client

Запустите и включите службу mariadb.service с помощью следующих команд:

# systemctl start mariadb && systemctl enable mariadb

Проверка состояния службы mariadb.service

# systemctl status mariadb

Шаг 5. Создание базы данных и пользователя Elgg

После завершения установки можно получить доступ к MariaDB с помощью команды:

# mysql -u root

Теперь создайте новую базу данных и пользователя, который будет иметь полные права доступа к этой базе данных:

CREATE DATABASE elgg; 
CREATE USER 'elgg'@'localhost' IDENTIFIED BY 'StrongPasswordHere'; 
GRANT ALL PRIVILEGES ON elgg.* TO 'elgg'@'localhost'; 
FLUSH PRIVILEGES; 
EXIT;

Шаг 6: Загрузить Elgg

Загрузите последнюю версию Elgg с официального сайта, используя следующую команду:

# wget https://elgg.org/download/elgg-5.0.2.zip

Распакуйте загруженный архив в каталог /var/www с помощью следующей команды:

# unzip elgg-5.0.2.zip -d /var/www

Переименуйте каталог elgg-5.0.2 в elgg:

# mv /var/www/elgg-5.0.2 /var/www/elgg

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

Каталог будет называться data, и создать его можно с помощью следующей команды:

# mkdir -p /var/www/data

Чтобы изменить владельца и установить правильные разрешения для этих файлов, необходимо выполнить следующую команду:

# chown -R www-data:www-data /var/www/elgg
# chown -R www-data:www-data /var/www/data

Шаг 7: Настройка Nginx

Создайте файл виртуального хоста, выполнив следующую команду:

# nano /etc/nginx/conf.d/elgg.conf

И введите следующую информацию:

server {
  listen 80;

  server_name your-domain.com;
  root /var/www/elgg;

  index index.php;
  
  access_log /var/log/nginx/your-domain.com_access.log;
  error_log /var/log/nginx/your-domain.com_error.log;

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

  location ~ .php$ {
    fastcgi_index index.php;
    fastcgi_split_path_info ^(.+.php)(.*)$;
    fastcgi_keep_conn on;
    fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
    include /etc/nginx/fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  }
}

Проверьте, нет ли ошибок во вновь созданной конфигурации Nginx:

# /usr/sbin/nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Если синтаксис в порядке и ошибок нет, можно перезапустить Nginx.

# systemctl restart nginx

Шаг 8. Завершение установки Elgg

Зайдите по адресу http://your-domain.com. На экране должно появиться следующее окно:

Нажмите кнопку «Далее» в нижней части страницы, чтобы перейти к следующему шагу.

Если какие-то зависимости отсутствуют, необходимо установить их на сервер, а затем снова обновить страницу. Убедившись, что все настроено правильно, можно нажать кнопку «Далее».

Теперь необходимо ввести информацию о базе данных. Также необходимо указать путь к каталогу данных (/var/www/data) и ввести URL-адрес сайта (http://your-domain.com/):

Далее необходимо ввести имя сайта и создать учетную запись администратора:

После этого Elgg будет успешно установлен на вашу систему.

Теперь вы можете получить доступ к своей панели администратора и войти в систему под своей учетной записью администратора по адресу http://your-domain.com/admin.

Поделитесь с друзьями
Підписатися
Сповістити про
guest

0 комментариев
Вбудовані Відгуки
Переглянути всі коментарі
0
Ми любимо ваші думки, будь ласка, прокоментуйте.x