Установка и настройка | YConfs — готовый сайт для конференций

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

Системные требования

Система реализована на базе фреймворка Yii версии 1.1.13.
Для запуска веб-приложения вам потребуется:

  • Веб-сервер Apache с включенной поддержкой .htaccess и модулем mod_rewrite.
  • PHP версии не ниже 5.2.6 с подключенной библиотекой обработки изображений GD и выполненной настройкой почтового сервера. Тестирование проводилось до версии PHP 5.6 включительно.
  • MySQL версии 5 с поддержкой InnoDB.

Установка на веб-сервер

  1. Скачать последнюю версию YConfs (.zip) и распаковать архив.
  2. Cкопировать папку веб-приложения на серверный компьютер с установленными Apache + PHP + MySQL.
    Предоставить права записи на директории: assets, uploads, temp, protected/runtime.
  3. Настроить вирутальный хост в Apache.
    Настройки выполняются в конфигурационном файле веб-сервера Apache (в файле httpd.conf, httpd-vhosts.conf или другом, в зависимости от настроек системы).

    Пример настройки:
    <VirtualHost *:80>
        DocumentRoot "/hosts/conf/htdocs"
        ServerName conf.example.ru
        ServerAlias www.conf.example.ru
        CustomLog /hosts/conf/log/access.log combined
        ErrorLog /hosts/conf/log/error.log
        <Directory "/hosts/conf/htdocs">
            AllowOverride All     
        	Order allow,deny
        	Allow from all
        	#Require all granted — для Apache 2.4+
        </Directory>
    </VirtualHost>
    
  4. Создать в MySQL базу данных и пользователя с правами для нее.
    Загрузить в нее схему (дамп базы данных) из файла protected/data/schema.sql.
    Краткая справка по созданию базы данных и пользователя в MySQL:

    А. Из консоли запустите команду "mysql.exe -u root -p" (имя пользователя может отличаться в вашем случае) и выполните:
    CREATE DATABASE my_db DEFAULT CHARACTER SET utf8;
    GRANT ALL PRIVILEGES ON my_db.* TO 'my_user'@'localhost' IDENTIFIED BY 'my_password';
    exit;
    

    Вместо my_db укажите желаемое название базы данных, вместо my_user — имя нового пользователя, вместо my_password — пароль для него.

    Б. Для загрузки схемы базы данных выполните команду:

    mysql.exe -u root -p my_db < schema.sql
    
  5. Настроить конфигурацию приложения: скопируйте файл protected/config/config.dist в файл protected/config/config.php и отредактируйте новый файл.
    Основное, что нужно указать — это название сайта (параметр name) и параметры подключения к базе данных:
    'connectionString' => 'mysql:host=localhost;dbname=my_db',
    'username' => 'my_user',
    'password' => 'my_password'.
    
  6. Настроить регулярный запуск заданий (cron) раз в 10 минут:
    a) для вызова cron через HTTP нужно использовать адрес:
    http://адрес/cron/cronPwd,
    (параметр cronPwd задается в конфигурационном файле config.php);
    б) для вызова cron из командной строки используется команда:
    php путь/protected/yiic.php cron.
    В unix-подобной системе выполните команду "crontab -e" и добавьте строку (для запуска через HTTP):
    */10 * * * * wget -O /dev/null -q http://адрес/cron/cronPwd
    
    или строку (для запуска в консольном режиме):
    */10 * * * * /usr/bin/php /путь_до_папки_yconfs/protected/yiic.php cron
  7. Для первоначального доступа к сайту используйте логин и пароль 'admin'. Поменяйте учетные данные администратора после первого входа на сайт.

Обновление версии

Общие рекомендации по обновлению:

  1. Обновить код веб-приложения.
  2. Выполнить миграцию базы данных до нужной версии стандартными средствами Yii.

Подробные инструкции по обновлению веб-приложения будут появляться по мере появления версий.

Добавление конференции

Для добавления конференции нужно выполнить следующие действия:

  1. Авторизоваться на сайте.
  2. Выбрать в главном меню пункт «Добавить конференцию» и заполнить форму создания конференции. Будет создан подсайт конференции со стандартными настройками.
  3. Заполнить информационные страницы, указать основные даты. Проверить и при необходимости изменить настройки в блоке «Администрирование конференции».
  4. После создания конференции она недоступна посетителям. Администратор сайта может включить конференцию в разделе конференции «Настройки» (опция «Конференция доступна»).

По умолчанию права на добавление новых конференций есть у всех пользователей. В конфигурационном файле config.php в параметре usersThatCreateConf можно указать, чтобы данное право было только у администратора сайта. В последнем случае организаторам конференций необходимо обращаться к администратору сайта, передавая ему информационные материалы по конференции (для первоначальной настройки страницы конференции) и логин на сайте (для предоставления прав на страницу конференции).

Настройка онлайн-регистрации

Настройка онлайн-регистрации состоит из нескольких шагов. Необходимо:

  1. Настроить форму заявки, указав нужные поля формы и их атрибуты на странице «Форма заявки» в меню «Администрирование» конференции.
  2. Если требуется, сформировать список секций и заседаний конференции в соответствующем пункте административного меню.
  3. Указать формы участия в конференции на странице «Настройки».
  4. Включить онлайн-регистрацию участников, активировав соответствующий пункт на странице «Настройки».

Разработка собственного дизайна

  1. В каталоге themes создайте папку с названием новой темы оформления сайта.
  2. Скопируйте в неё каталог protected/views, создайте каталоги images (для иллюстраций) и css (для стилей).
  3. Отредактируйте файлы представлений в новом каталоге views. Основной шаблон страницы содержится в файле views/layouts/main.php (в частности, там указываются пути до CSS-файлов).
  4. В конфигурационном файле config.php в параметре theme укажите название новой темы.

Можно копировать файлы из папки protected/views по мере необходимости, начав с файла main.php. В этом случае отсутствующие в теме файлы представлений будут браться из каталога protected/views.

Подробности по созданию тем оформления читайте в руководстве Yii.