Elgg – это премированный PHP-движок для запуска полноценной социальной сети. Этот движок постоянно совершенствуется и дополняется плагинами и темами, созданными сообществом пользователей и официальными разработчиками.
Требования
- Сервер Debian 7 или Ubuntu 12.04
- Apache (с модулем rewrite)
- PHP 5.2+ (также необходимы несколько модулей для поддержки некоторых функций)
- MySQL 5+
Обновление системы
Прежде чем начать установку, рекомендуется полностью обновить систему:
apt-get update
apt-get upgrade
Установка веб-сервера и сервера базы данных
Установите Apache и MySQL:
apt-get install apache2 mysql-server
Во время установки сервера MySQL нужно ввести пароль для root-пользователя. Рекомендуется установить сложный пароль и записать его на всякий случай, поскольку позже он понадобится для создания базы данных и пользователя Elgg.
Настройка Apache
После установки Apache нужно активировать модуль rewrite, запустив команду:
a2enmod rewrite
Конфигурации Apache по умолчанию игнорируют файлы .htaccess в document root (по умолчанию /var/www). Но эти файлы необходимы для корректной работы Elgg (для перезаписи URL).
Измените настройки Apache, открыв конфигурационный файл в nano, vim или любом другом редакторе:
nano /etc/apache2/sites-available/default
В данном файле найдите раздел Directory, выделенный для папки /var/www, и замените AllowOverride None на AllowOverride All.
Отредактировав конфигурационный файл и сохранив изменения, перезапустите apache:
service apache2 restart
Создание пользователя и БД MySQL
Вместо того, чтобы использовать root для Elgg, рекомендуется создать нового пользователя базы данных. Откройте командную строку MySQL, выполнив:
mysql -u root -p
Выполните следующие запросы, чтобы создать новую базу данных, пользователя для Elgg и предоставить этому пользователю доступ к базе данных.
CREATE DATABASE elgg;
CREATE USER elgguser IDENTIFIED BY 'elggpassword';
GRANT ALL ON elgg.* TO elgguser;
Установка PHP
Следующая команда установит PHP и некоторые модули, необходимые для работы отдельных функций Elgg.
apt-get install php5 php5-gd php-xml-parser php5-mysql unzip
Загрузка Elgg
Перейдите в root-каталог веб-сервера и скачайте исходный код Elgg:
cd /var/www/
wget http://elgg.org/getelgg.php?forward=elgg-1.8.18.zip -O elgg.zip
Разархивируйте и удалите elgg.zip, а затем распакуйте папку, содержащую код.
unzip elgg.zip && rm elgg.zip
mv elgg-1.8.18/* . && rmdir elgg-1.8.18
Настройка Elgg перед установкой
Настройка каталога данных
Для хранения пользовательских и сгенерированных системой данных Elgg использует специальный каталог данных. Создайте этот каталог за пределами root-директории веб-сервера и дайте веб-серверу права на запись.
mkdir <span style='color: red'>/var/elggdata</span>
chown -R www-data:www-data /var/elggdata
www-data является пользователем apache, который вносит записи в файловую систему.
Приведенная выше команда предает Apache права на каталог данных.
Файлы .htaccess и settings.php
Теперь переместите файлы .htaccess и settings.php в правильные точки системы:
mv /var/www/htaccess_dist /var/www/.htaccess
mv /var/www/engine/settings.example.php /var/www/engine/settings.php
Редактирование settings.php
Откройте settings.php и заполните детали доступа к базам данных.
nano /var/www/engine/settings.php
Не забудьте заменить значения, приведенные в примере, своими данными:
$CONFIG->dbuser = 'elgguser';
$CONFIG->dbpass = 'elggpassword';
$CONFIG->dbname = 'elgg';
$CONFIG->dbhost = 'localhost';
$CONFIG->dbprefix = ''; // or anything else you like
Установка Elgg
После выполнения всех описанных в статье действий установка будет очень простым процессом. Откройте браузер и перейдите на страницу /install.php, используя домен (например, example.com) или IP-адрес (например, 111.222.333.44).
http://example.com/install.php
или
http://111.222.333.44/install.php
Появится страница установки со всеми необходимыми инструкциями. Elgg создаст базу данных, запросит детали некоторых сайтов и даже создаст пользователя с правами администратора.
Получение справки
При возникновении каких-либо проблем просто зайдите на сайт сообщества Elgg. Здесь вы можете найти немало людей, готовых помочь в любом вопросе.