Установка Opigno в Debian 7 при помощи Git и Drush

Opigno – это современная платформа электронного обучения на основе надёжного и проверенного на практике фреймворка Drupal. Установить Opigno при помощи SFTP довольно легко, но при работе с виртуальным выделенным сервером нужно установить платформу с помощью Git и Drush.

Подготовка сервера

Для выполнения руководства нужно предварительно настроить сервер Debian 7.0.

Вместо пользователя root рекомендуется использовать для работы учётную запись пользователя с правами sudo.

Все команды данного руководства предназначены для не-рутового пользователя с правами sudo. Чтобы выполнить руководство как пользователь root, удалите ключевое слово sudo в начале команд.

Обновите систему и пакеты:

sudo apt-get update
sudo apt-get upgrade

Теперь нужно установить программы, необходимые для работы Opigno.

Установка Apache

Платформа Opigno может работать на веб-серверах NginX и Apache; чтобы установить Apache, используйте команду:

sudo apt-get install apache2

Чтобы убедиться, что установка прошла успешно, откройте браузер и перейдите к IP-адресу виртуального сервера (например, http://11.111.1.111). На экране должно появиться следующее сообщение:

It works !

Теперь нужно убедиться, что Apache позволяет файлам .htaccess переопределять настройки. Opigno поставляется со стандартным файлом .htaccess, который настраивает каталог, в котором находится. Этот файл позволяет установить некоторые настройки безопасности по умолчанию.

Запустите:

sudo pico /etc/apache2/sites-available/default

Найдите раздел <Directory /var/www/> (внимание: не <Directory />!).

Измените значение директивы AllowOverride (None на All), а затем сохраните и закройте файл (комбинация клавиш Ctrl+x и y).

После этого нужно перезапустить Apache:

sudo service apache2 restart

Чистые URL-ы

Opigno может использовать чистые URL-адреса (то есть, вместо ссылки like ?=path/to/page можно настроить чистую и понятную ссылку /path/to/page).

Это абсолютно опциональная, однако рекомендованная настройка. Для этого необходимо включить модуль Rewrite:

sudo updatedb
sudo a2enmod rewrite
sudo service apache2 restart

Установка PHP

Opigno работает на фрейммворке Drupal, который, в свою очередь работает на PHP. Следующая команда установит PHP и библиотеку PHP GD library, от которой зависит Drupal.

sudo apt-get install php5 php5-gd

Также рекомендуется установить библиотеку APC, которая ускорит установку Opigno путём кэширования кода операции PHP. Будучи языком сценариев, PHP обычно восстанавливает код операции для каждого запроса. Благодаря APC код операции будет собран по первому запросу:

sudo apt-get install php-apc

Проверка настроек PHP

Чтобы убедиться, что установка PHP прошла успешно и что PHP теперь может взаимодействовать с Apache, выполните:

echo "<?php phpinfo();" > phpinfo.php
sudo mv phpinfo.php /var/www/phpinfo.php

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

[your server ip]/phpinfo.php

На экране появится текущая установка PHP.

Убедившись, что PHP работает должным образом, удалите файл phpinfo.php, так как он открывает сторонним пользователям доступ к конфиденциальной информации:

sudo rm /var/www/phpinfo.php

Установка MySQL

Opigno может взаимодействовать с большим количеством разных СУБД, однако рекомендуется использовать MySQL, поскольку многие модули Drupal протестированы на MySQL-совместимых БД. Чтобы в дальнейшем расширить функции Opigno при помощи сторонних модулей, установите MySQL:

sudo apt-get install mysql-server php5-mysql

Затем нужно подготовить СУБД к производству:

sudo mysql_install_db
sudo /usr/bin/mysql_secure_installation

Создание пользователя для Opigno

На данном этапе настоятельно рекомендуется создать отдельного пользователя для взаимодействия с базой данных Opigno. Это значительно повысит безопасность виртуального сервера.

Откройте MySQL:

mysql -u root -p

Это откроет командную строку MySQL. Чтобы создать БД, введите:

create database opigno_db;

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

grant all privileges on opigno_db.* to 'opigno'@'localhost' identified by '[enter a password]';

Закройте командную строку MySQL:

exit

Установка Drush

Drush (расшифровывается как Drupal Shell) – это очень удобная утилита для управления любой системой, запущенной на Drupal. Чтобы установить Drush, запустите:

sudo apt-get install drush

Примечание: Более подробно ознакомиться с работой Drush можно в руководствах:

Установка Git

Система контроля версий Git отлично подходит для работы с Opigno, поскольку она позволит без труда обновлять сайт. Как правило, в системе Debian 7.0 Git поставляется по умолчанию. Если это не так, просто запустите:

sudo apt-get install git

Итак, теперь система полностью готова к установке Opigno.

Установка Opigno

Создайте отдельный каталог для установки Opigno; это позволит использовать несколько установок Opigno (например, одну для тестирования, вторую – для производства). В данном руководстве такой каталог будет называться Projects и находиться в домашнем каталоге (выберите любое удобное имя каталога):

cd ~
mkdir Projects
cd Projects

На момент написания статьи последней веткой Opigno является 7.x-1.x; клонируйте её:

git clone --branch 7.x-1.x http://git.drupal.org/project/opigno_lms.git
cd opigno_lms

Эта команда клонирует последнюю версию Opigno. Возможно, для сайтов на этапе производства лучше использовать определённый релиз, а не последний доступный код (так как код может содержать недочёты).  Чтобы просмотреть все доступные релизы, введите:

git tag -l

Чтобы использовать выбранную вами версию (например, 1.0), введите команду:

git checkout 7.x-1.0

Opigno является дистрибутивом Drupal. Это значит, что данная платформа объединяет множество различных модулей, а также устанавливает и конфигурирует всё самостоятельно. Это очень удобно, так как все сторонние модули располагаются в отдельных репозиториях GIT. Чтобы извлечь весь код, необходимый для запуска программы, нужно собрать Opigno. На данном этапе понадобится Drush.

В этом руководстве виртуальные хосты Apache не задействованы, хотя в идеале для сайта тестирования и для сайта производства нужно настроить по виртуальному хосту (например: my-opigno.com и dev.my-opigno.com соответственно). Это позволит работать в двух разных root-каталогах. Однако в руководстве код просто помещается в стандартный каталог Apache, /var/www.

Запустите:

cd /var/www
sudo drush make ~/Projects/opigno_lms/build-opigno-lms.make

Drush спросит, нужно ли собрать Opigno в текущем каталоге; выберите yes.

Поскольку при сборке использовалась команда sudo, все собранные файлы сейчас принадлежат root:root. Нужно передать права на файлы пользователю, через которого работает PHP:

sudo chown www-data:www-data . -R

Итак, далее можно действовать двумя способами:

  1. Можно открыть ip-адрес сервера и использовать графический инсталлятор;
  2. Или же установить сайт при помощи командной строки Drush.

Рассмотрим подробнее второй способ.

Вернитесь в каталог /var/www:

cd /var/www

И запустите:

sudo drush site-install opigno_lms --db-url=mysql://[root or the new MySQL user you created]:[password you provided]@localhost/[database name] --account-pass=[your Opigno admin password]

Важно! Если ранее вы не включили модуль Rewrite, добавьте в конец команды drush site-install следующее:

--clean-url=0

На запрос ответьте yes. Установка может занять несколько минут.

Установка выведет предупреждение об использовании библиотеки PDF, которое можно проигнорировать.

Запустите эту команду, чтобы передать права на файлы соответствующим группам:

sudo chown www-data:www-data . -R

Вход в Opigno

Откройте в браузере следующую ссылку:

http://[your server ip]

В левой части экрана появится форма входа. Если платформа Opigno была установлена через drush, используйте следующие учётные данные:

  • Имя пользователя: admin
  • Пароль: пароль, указанный в параметре –account-pass.

При установке Opigno с помощью графического инсталлятора используйте учётные данные, заданные вами во время настойки.

Отказ в доступе

Некоторые версии Opigno выводят на экран сообщение “Access denied” рядом с формой входа. Это совершенно нормальное поведение программы: чтобы получить доступ к контенту, необходимо сначала предоставить учётные данные. Сразу после авторизации вы без проблем сможете начать работу с платформой.

Настройка cron (опционально)

Opigno может использовать демон cron для регулярной очистки материала. Конечно, это совсем не обязательно, поскольку платформа Opigno оборудована системой восстановления, однако эта система не так продуктивна. Потому рекомендуется настроить cron.

Из соображений безопасности задачи cron защищены уникальным ключом. Чтобы получить этот ключ, откройте:

[your server ip]/admin/reports/status

Примечание: Для этого нужно авторизоваться.

Найдите строку «Cron maintenance tasks» и скопируйте предоставленный URL.

В командной строке запустите:

sudo crontab -e

Затем добавьте следующую строку, которая будет запускать скрипт cron каждый час:

0 * * * * wget -O - -q -t 1 http://[your server ip]/cron.php?cron_key=[very-long-key]

Нажмите Ctrl+x и Y, чтобы сохранить и закрыть файл.

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

sudo service cron restart

Теперь платформа Opigno установлена и полностью готова к работе! Больше полезной информации о Opigno можно найти здесь.

Tags: , , , , , , , , ,

Добавить комментарий