Руководство администратора

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

DEVPROM разработан на связке Apache, PHP, MySQL и совершенно не требователен к ресурсам сервера - он может быть установлен на любую более-менее современную машину, обеспечивая при этом достаточное быстродействие и поддержку большого числа одновременно работающих пользователей.

DEVPROM может быть установлен на операционные системы семейств Windows и Linux/Unix. Для работы с системой вы можете использовать любые современные версии браузеров: Firefox, Chrome, Opera, Safari, IE.

Рекомендации по аппаратному обеспечению:

Количество пользователей

Процессор

Память

Дисковое пространство

Количество серверов

< 20

1.7 ГГц

1 ГБ

60 Гб

1

20 - 100

3 ГГц

2 ГБ

100 Гб

1

> 100

двухядерный 2.6 ГГц

4 ГБ

200 Гб

2 (сервер СУБД и сервер приложения)

Установка на Windows

Предварительно рекомендуем вам установить стандартные библиотеки Windows, которых может не быть в вашей версии операционной системы: vcredist_x86.exe (2 МБ). Мы не рекомендуем запускать инсталлятор DEVPROM на те ПК, где уже установлены PHP/Apache/MySQL других версий, в этом случае возможны конфликты в работе приложений, в таком случае воспользуйтесь этой инструкцией: Установка на Linux

Для установки DEVPROM необходимо запустить установочный файл DEVPROMInstaller.exe и пройти по шагам мастера установки. В установочный файл уже включены необходимые версии Apache, PHP и MySQL. В процессе установки инсталлятор проверяет доступность необходимых портов, если порты, используемые Apache и MySQL по умолчанию, заняты, то вам необходимо остановить ваши сервисы, завершить установку DEVPROM и затем изменить используемые порты в конфигурационных файлах DEVPROM.

После того, как приложение будет установлено необходимо открыть браузер и перейти по адресу http://localhost на страницу авторизации. Вам необходимо добавить первого пользователя, поставив ему признак "Является администратором". После того, как будет добавлен хотя бы один администратор, начнет работать подсистема проверки прав доступа.

В зависимости от настроек DNS в вашей корпоративной сети работа с DEVPROM по адресу http://localhost может быть невозможна для других пользователей. Если вы устанавливаете DEVPROM на выделенный сервер, то в разделе администрирования на странице "Настройки" вам необходимо указать полное имя сервера, например, devprom.company.ru

Чтобы выяснить полное имя сервера выполните команду ipconfig /all


 
 Настройка протокола IP для Windows
         Имя компьютера  . . . . . . . . . : devprom
         Основной DNS-суффикс  . . . . . . : company.ru
 

Таким образом, полное имя сервера состоит из имени компьютера и DNS-суффикса, то есть devprom.company.ru. После перезапуска сервиса DEVPROM.Apache вы можете использовать приложение используя следующий адрес: http://devprom.company.ru

Настройка почтовых уведомлений (SMTP)

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

Откройте файл C:\DEVPROM\smtp\sendmail.ini и задайте значения для следующих параметров:

  • smtp_server - адрес вашего SMTP сервера, например smtp.mail.ru
  • auth_username - имя пользователя (или название почтового ящика), от чьего имени будет осуществляться авторизация на сервере. Это не обязательно тот пользователь, от имени которого будет выполняться отправка уведомления. Данный параметр необходим, если ваш SMTP-сервер требует обязательной авторизации для подключения по протоколу SMTP.
  • auth_password - пароль пользователя, от чьего имени будет осуществляться авторизация на сервере. Данный параметр необходим, если ваш SMTP-сервер требует обязательной авторизации для подключения по протоколу SMTP.

Если после настройки почта все равно не отправляется, то задайте следующие параметры:


 error_logfile=error.log
 debug_logfile=debug.log

Анализ данных файлов позволит определить причины, по котором почта не отправляется. Если проблему устранить все равно не удалось, напишите нам через форму обратной связи, мы постараемся разобраться с проблемой.

Если ваш SMTP-сервер требует шифрования при подключении (TLS/SSL), то используйте следующие опции для корректной настройки подключения:


 ; SMTPS (SSL) support
 ;   auto = use SSL for port 465, otherwise try to use TLS
 ;   ssl  = alway use SSL
 ;   tls  = always use TLS
 ;   none = never try to use SSL
 
 smtp_ssl=auto

Развертывание Subversion (SVN) репозитория

Для того, чтобы интегрировать DEVPROM с системой контроля версий исходного кода, вы можете установить Subversion. Для этого необходимо скачать дистрибутив Subversion с сайта http://www.collab.net/downloads/subversion/

Преимущества этого дистрибутива в том, что авторы интегрировали установку Subversion и Apache (который необходим для использования протокола WebDAV) в одном инсталляторе.

Если вы устанавливаете Subversion на тот же сервер, что и DEVPROM, вам необходимо в параметрах Apache указать порт 81, поскольку порт 80 уже занят веб-сервером DEVPROM. Запомните путь к репозиториям, который вы указали для Apache. После установки приложения необходимо перезагрузить компьютер.

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


 svnadmin create local

где local - это название репозитория, вы можете выбрать любое название.

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


 svn checkout http://localhost:81/svn/local ./
 svn add *
 svn commit --message=""

Теперь можно создать новый проект в DEVPROM и на закладке SVN указать в качестве пути к проекту строку http://localhost:81/svn/local - вы должны будете увидеть в DEVPROM ранее добавленные в репозиторий файлы.

Развертывание глобального Git репозитория

Система контроля версий Git относится к классу респределенных (DCVS), то есть не имеющих центрального (глобального) репозитория. Если ваш процесс разработки требует наличия выделенного репозитория, в котором будет располагаться кодовая база, например, для очередной версии или фичи, то вы можете организовать глобальный репозиторий. Например, инструментарий continuous integration для очередной сборки и запуска тестов будет собирать приложение из глобального репозитория.

Сначала вам необходимо создать глобальный репозиторий, для этого необходимо установить Git, создать каталог для репозитория, например c:\git_repository\bare, перейти в него и выполнить команду:


 git --bare init
 git update-server-info

параметр "bare" говорит о том, что в репозитории не будет своей рабочей копии (файлов, обычно содержащихся в скрытом каталоге .git), то есть все изменения в такой репозиторий можно будет выполнять только из других (локальных) репозиториев разработчиков.

Для того, чтобы репозиторий стал доступен из DEVPROM, а также другим разработчикам необходимо организовать к нему удаленный доступ по протоколу HTTP/HTTPS. Сделать это можно при помощи веб-сервера Apache, входящего в дистрибутив DEVPROM. Необходимо в каталог C:\DEVPROM\apache\conf поместить файл git.conf со следующим содержимым:


 LoadModule authz_user_module modules/mod_authz_user.so
 LoadModule authz_host_module modules/mod_authz_host.so
 LoadModule dav_module modules/mod_dav.so
 LoadModule dav_fs_module modules/mod_dav_fs.so
 LoadModule dav_lock_module modules/mod_dav_lock.so
 
 DavLockDB "davlock/gitlock"
 
 <VirtualHost *:8080>
 DocumentRoot "c:\git_repository\bare"
 <Location />
    DAV On
    DirectoryIndex index
 
    Options +Indexes +FollowSymLinks +ExecCGI
    
    Allow from all
    Order allow,deny
 
    AuthType Basic 
    AuthName "DEVPROM Git Repository" 
    AuthUserFile c:\git_repository\passwd
 
    <Limit GET PUT PUSH POST DELETE PROPPATCH COPY MOVE MKCOL LOCK UNLOCK>
    	Require valid-user
    </Limit>
 </Location>
 </VirtualHost>
 

Файл c:\git_repository\passwd создается при помощи утилиты htpasswd, входящей в дистрибутив Apache.

В файле C:\DEVPROM\apache\conf\httpd.conf нужно включить использование файла git.conf:


 Listen 8080
 Include conf/git.conf

Проверить удаленный доступ по протоколу HTTP к глобальному Git-репозиторию можно по ссылке http://localhost:8080

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


 git clone http://localhost:8080 remote
 type nul >>readme.txt & copy readme.txt +,,
 git add *
 git commit -m "dummy file"
 git push origin master

Теперь репозиторий готов для подключения к проекту в DEVPROM. Если возникают проблемы с выполнением операций над удаленным репозиторием, то установите переменную окружения:


 set GIT_CURL_VERBOSE=1

Подключение к Devprom

Для пользователей Linux/Unix необходимо проверить, что по пути, на который указывается константа SERVER_ROOT (определенная в settings_server.php, отображаемая также в разделе администрирования на вкладке "Настройки"), возможно создание каталога из-под пользователя, под которым исполняется Apache.

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

  • Система контроля версий: Git
  • Путь к репозиторию: http://localhost:8080
  • Путь к файлам: master
  • Имя пользования: <логин>
  • Пароль: <пароль>

После сохранения параметров подключения система отобразит список изменений, выполненных в репозитории.

Изменение стандартных портов

Если вам необходимо, чтобы DEVPROM работал совместно с другими приложениями, также использующими Apache или MySQL, то вам необходимо изменить порты, используемые по умолчанию на другие значения.

Остановите сервисы DEVPROM.Apache и DEVPROM.MySQL. Откройте на редактирование файл C:\DEVPROM\apache\conf\httpf.conf и замените параметр Port 80 на Port 81 (номер порта можете выбрать по своему усмотрению). После этого доступ к приложению будет осуществляться по адресу http://localhost:81

Откройте на редактирование файл C:\DEVPROM\mysql\mysql.ini и замените значение port=3306, например, на port=3307. Откройте на редактирование файл C:\DEVPROM\apache\htdocs\settings_server.php и в строке "define('DB_HOST', '127.0.0.1:3306');" замените старый порт на новый.

Запустите сервисы DEVPROM.Apache и DEVPROM.MySQL, приложение готово к работе на новых портах и не будет конфликтовать с ранее установленными приложениями.

Установка на Linux

1. Установка PHP, Apache, MySQL

Для установки DEVPROM необходимо скачать приложение. Заранее необходимо установить PHP 4.x-5.3.x, Apache 1.x-2.x и MySQL 5.x, в серверных вариантах Linux эти компоненты либо уже присутствуют, либо вам необходимо будет скомпилировать их.

2. Настройка или компиляция PHP

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

php_mysql, php_gd2, php_zip, php_curl, php_openssl, php_mbstring, php_zlib. Подключение модулей осуществляется либо в файле php.ini в разделе extentions, либо при компиляции путем задания соответствующих опций, например, --with-curl, --with-openssl и т.д.

Проверьте, что настройки php.ini соответствуют следующим значениям:


 zend.ze1_compatibility_mode = Off
 error_reporting=E_ERROR
 log_errors = On
 display_errors = Off
 file_uploads = on
 register_globals=off
 register_long_arrays=On
 magic_quotes_runtime=off
 magic_quotes_gpc=0;
 always_populate_raw_post_data=true
 track_vars=true
 upload_max_filesize=100M
 post_max_size=100M
 max_execution_time=600
 max_input_time=600
 memory_limit=128M
 allow_url_fopen=On
 cgi.force_redirect=0
 date.timezone="Europe/Moscow"
 short_open_tag=On

Большинство значений параметров являются рекомендуемыми настройками, при необходимости вы можете их изменить.

Внимание! Следующие переменные обязательно должны иметь указанные значения:

error_reporting=E_ERROR

register_long_arrays=On

3. Настройка или компиляция MySQL

Необходимо убедиться, что в файле /etc/my.cnf (в настройках MySQL) опция lower_case_table_names установлена следующим образом:


 [mysqld]
 lower_case_table_names=1

4. Настройка Apache

Убедитесь, что в конфигурационных файлах apache разрешено использование файлов .htaccess для каталога, в котором развернуто приложение DEVPROM, а также подключен модуль mod_rewrite.

После этого нужно распаковать архив с дистрибутивом DEVPROM с папку для web-приложений Apache, по-умолчанию это /var/www/. Убедитесь, что пользователь, под учетной записью которого выполняется Apache, имеет права доступа на чтение/запись и создание файлов в каталогах с приложением (например, /var/www/).

5. Настройка планировщика Cron

Настройте следующие cron-задачи, добавьте в файл /etc/crontab следующую строчку:


 # выполнение заданий по расписанию (в том числе отправка почтовых уведомлений)
 * * * * * root /usr/bin/php /var/www/devprom/htdocs/core/processjobs.php

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

6. Настройка дополнительных утилит

Проверьте, что в системе установлены утилиты unzip и zip, они необходимы для создания резервных копий и установки обновлений. Убедитесь, что версия утилит zip/unzip - 3 или выше.

Если у вас нет возможности обновить версии этих утилит, то в файле настроек settings_server.php измените тексты вызова команд на следующие значения:


 
 define('ZIP_HELP_COMMAND', 'zip -?');
 define('UNZIP_HELP_COMMAND', 'unzip -?');

7. Настройка почтовых уведомлений

По умолчанию в большинстве дистрибутивов отправка почтовых уведомлений осуществляется при помощи утилиты sendmail и все уже настроено для этого. Убедитесь, что в вашем дистрибутиве установлена утилита sendmail.

8. Установка

Для установки необходимо зайти по ссылке http://localhost/admin/install.php указать параметры подключения к базе данных и нажать кнопку "Установить". При этом будет создана необходимая структура базы данных и DEVPROM станет доступным для работы.

После установки DEVPROM в файловой системе должны создаться дополнительные каталоги, пути к которым вы можете изменить в файле settings.php:

  • /var/files для хранения файлов, прикрепляемых к пожеланиям и другим объектам системы
  • /var/backup для хранения резервных копий базы данных и приложения
  • /var/update для временного размещения файлов обновлений DEVPROM при их установке

Необходимо убедиться, что каталоги созданы и на них выданы права на запись/чтение/создание файлов для учетной записи, под которой работает Apache.

Установка на OpenSUSE

В этом разделе описана инструкция по установке DEVPROM на операционную систему OpenSUSE 11.4. При установке дистрибутива используйте имя нового пользователя devprom. Все операции требуют наличия доступа под аккаунтом root.

Установка apache, php, mysql

При помощи YaST вам необходимо установить дистрибутивы Apache2, включая PHP и расширение php_zlib. Затем необходимо установить MySQL, включая расширение php_mysql.

Настройка Apache2

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


 cp /etc/apache2/vhosts.d/vhost.template /etc/apache2/vhosts.d/vhost-devprom.conf

Открываем файл /etc/apache2/vhosts.d/vhost-devprom.conf на редактирование, удаляем лишние строки и в настройках виртуального хоста указываем путь, по которому будут располагаться скрипты приложения: /home/devprom/public_html/

В этом же файле укажем пути для логов (/var/log/apache2/devprom) и включим для сайта использование директив в файле .htaccess, для этого необходимо в настройках сайта прописать опцию:


 AllowOverride All

Необходимо добавить модуль rewrite:


 a2enmod rewrite
 rcapache2 restart

Создаем каталог для лог-файлов: mkdir /var/log/apache2/devprom

Запускаем apache командой apache2ctl start или перезагружаем командой apache2ctl restart

Настройка MySQL

Открываем на редактирование файл /etc/my.cnf и прописываем следующую опцию:


 [mysqld]
 lower_case_table_names=1 

Запускаем MySQL командой /etc/init.d/mysql start или перезапускаем командой /etc/init.d/mysql restart

Подключаемся к MySQL:


 mysql --user=root --password=

И создаем пользователя, под которым будет создана база данных DEVPROM:


 GRANT ALL PRIVILEGES ON *.* TO devprom IDENTIFIED BY 'devprom_pass' WITH GRANT OPTION;

Настройка PHP

Открываем на редактирование файл /etc/php5/apache2/php.ini и выставляем следующие значения параметров:


 error_reporting=E_ERROR
  file_uploads = on
  register_long_arrays=On
  upload_max_filesize=100M
  post_max_size=100M
  max_execution_time=600
  max_input_time=600
  memory_limit=128M
  allow_url_fopen=On
  date.timezone="Europe/Moscow"
  short_open_tag=On

Те же самые настройки необходимо выполнить и для консольного варианта исполнения PHP: /etc/php5/cli/php.ini

Необходимо перейти к настройкам расширения PHP под названием suhosin и задать в файле параметров suhosin.ini следующие настройки:


 suhosin.post.max_vars = 2000
 suhosin.request.max_vars = 2000

Перезагружаем Apache2 при помощи команды: apache2ctl restart

Настройка DEVPROM

Необходимо распаковать содержимое архива devprom.zip в каталог /home/devprom/public_html и создать каталоги для резервных копий, файлов обновлений и файлов приложения:


 mkdir /home/devprom/backup
 mkdir /home/devprom/update
 mkdir /home/devprom/files 

Затем необходимо выполнить команды:


 chown -R wwwrun:www /home/devprom/
 chmod -R 755 /home/devprom/ 

Настройка crontab

Открываем на редактирование файл /etc/crontab и добавляем туда строчку:


 * * * * * wwwrun /usr/bin/php /home/devprom/public_html/core/processjobs.php

Настройка локали

По умолчанию в OpenSUSE не установлена локаль ru_RU.CP1251, чтобы исправить это необходимо выполнить следующие команды:


 zypper in glibc-i18ndata
 
 gunzip /usr/share/i18n/charmaps/CP1251.gz
 
 localedef -c -f /usr/share/i18n/charmaps/CP1251 -i /usr/share/i18n/locales/ru_RU /usr/lib/locale/ru_RU.CP1251

Установка с использованием XAMPP

Если вам необходимо установить дистрибутивы Apache(+SSL)/PHP/MySQL определенной версии или для платформы, отличной от Windows, которые не включены в инсталлятор DEVPROM под Windows, то вы можете воспользоваться готовыми дистрибутивами XAMPP. Для этого вам необходимо скачать и установить необходимый дистрибутив, а затем загрузить само приложение DEVPROM. В настоящее время поддерживаются версии PHP 4.x, PHP 5.2.x и PHP 5.3.x, учтите это при выборе дистрибутива XAMPP.

Выполните предварительную настройку параметров PHP, откройте на редактирование файл xampplite/php/php.ini и убедитесь, что следующие параметры определены следующим образом:


 
 error_reporting = E_ERROR
 date.timezone = "Europe/Moscow"
 memory_limit = 256M
 

Убедитесь, что в php.ini подключены следующие расширения: php_mysql, php_gd2, php_zip, php_curl, php_openssl.

Скопируйте приложение DEVPROM, предварительно распаковав архив, в каталог xampplite/htdocs/ и выполните настройки в конфигурационных файлах. В файле settings_server.php укажите путь, по которому установлен xampp, например:


 
 define('SERVER_ROOT', 'c:/xampp/xampplite');
 

Откройте страницу в браузере: http://localhost/admin/install.php на форме мастера создания базы данных нажмите кнопку "Установить". При необходимости вы можете изменить название базы данных. По умолчанию, сразу после установки XAMPP, пароль для пользователя root пустой.

Если вы используете дистрибутив XAMPP для развертывания DEVPROM на Windows, то для организации отправки почтовых уведомлений, формируемых DEVPROM, рекомендуем использовать sendmail, который уже включен в дистрибутив XAMPP. Для этого вам необходимо:

  1. Отредактировать настройки xampplite/php/php.ini: закомментировать параметры "SMTP" и "smtp_port" и раскомментировать параметр "sendmail_path".
  2. Выполнить настройку файла xampplite/sendmail/sendmail.ini по инструкции: Настройка почтовых уведомлений (SMTP)

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


 
 /var/www/devprom/htdocs/core/processjobs.php * * * * *
 

Если вы развернули XAMPP на Windows, где нет cron сервиса, то рекомендуем загрузить приложение nnCron Lite, установить его в каталог xampplite/cron, установить как сервис Windows и настроить файл cron.tab следующим образом:


 
 * * * * * * run.bat processjobs.php > processjobs.log
 

Файл run.bat устанавливает каталоги по умолчанию и запускает скрипт на выполнение:


 
 echo off
 echo started %1
 date /t
 time /t
 cd "../htdocs/core/"
 call "../../php/php.exe" %1
 echo completed %1
 date /t
 time /t
 

Установка с использованием Denwer

Если вы решили использовать DEVPROM совместно с джентльменским набором Web-разработчика DENWER, то вам необходимо выполнить следующее. Загрузите последний дистрибутив DENWER с сайта разработчика http://denwer.ru и пройдите все шаги установки, используя значения для директорий, предлагаемые по умолчанию.

Загрузите дистрибутив DEVPROM, предназначенный для установки на Linux/Unix, то есть содержащий только само приложение DEVPROM, без каких-либо дополнительных веб-серверов, СУБД и т.п. Распакуйте архив в каталог C:\WebServers\home\devprom\www

Перейдите в каталог C:\WebServers\usr\local\php5 и отредактируйте файл php.ini, вам необходимо задать следующие значения переменных:


 
 register_globals = On
 error_reporting = E_ERROR
 

Убедитесь, что в php.ini подключены следующие расширения: php_mysql, php_gd2, php_zip, php_curl, php_openssl.

Откройте на редактирование файл C:\WebServers\home\devprom\www\settings_server.php и определите константу SERVER_ROOT следующим образом:


 
 define('SERVER_ROOT', 'C:\WebServers\home\devprom');
 

Откройте на редактирование файл C:\WebServers\home\devprom\www\settings.php и определите константу SERVER_CORPMYSQL_PATH следующим образом:


 
 define('SERVER_CORPMYSQL_PATH', 'C:/WebServers/usr/local/mysql-5.1/bin/mysql.exe');
 

Теперь вы можете открыть браузер и ввести адрес http://devprom после чего отобразится страница установки DEVPROM. Оставьте значения, предлагаемые по умолчанию, и нажмите кнопку "Установить". По окончании этой операции DEVPROM готов к использованию.

Часто задаваемые вопросы

1. После установки не получается зайти в DEVPROM по адресу http://localhost

В зависимости от настроек DNS в вашей корпоративной сети работа с DEVPROM по адресу http://localhost может быть невозможна. Если вы устанавливаете DEVPROM на выделенный сервер, то вам необходимо в файле httpf.conf для параметра ServerName вместо localhost указать полное имя сервера, например, devprom.company.ru.

После изменений необходимо перезапустить apache.

2. При попытке установить DEVPROM на Linux возникает зацикливание

В последних версиях PHP по умолчанию отключены некоторые глобальные переменные, чтобы исправить ситуацию необходимо в файле php.ini добавить следующую опцию:


 register_long_arrays=On

После изменений необходимо перезапустить apache.

3. При установке DEVPROM вместо приложения отображаются сообщения Warning: Missing argument

Данное сообщение является особенностью PHP и должно быть отключено переменной в php.ini файле:


 error_reporting=E_ERROR

После изменений необходимо перезапустить apache.

4. Как установить приложение DEVPROM на существующий Web-сервер, где уже работают другие приложения?

Если вы планируете развернуть приложение DEVPROM на Web-сервере, под которым уже работают другие приложения, то скорее всего, вы разместили файлы DEVPROM в каталоге htdocs/devprom/ и пытаетесь использовать DEVPROM по ссылке http://server/devprom

Работа с DEVPROM при таком способе обращения к страницам приложения невозможна. Однако, чтобы исправить ситуацию, достаточно выполнить два простых действия:

  1. Настройте ваш DNS сервер и внесите туда запись devprom.server, соответствующую IP-адресу server.
  2. В корневом каталоге Web-сервера, например, в htdocs, создайте файл .htaccess со следующим содержимым:


 RewriteEngine On
 
 RewriteCond %{HTTP_HOST} devprom.server
 RewriteRule ^(.*)$ devprom/$1 [L,QSA]

Теперь вы сможете использовать DEVPROM по ссылке http://devprom.server

5. Не удается выполнить резервное копирование, прогресс выполнения зависает и резервная копия не создается.

Время создания резервной копии зависит от многих факторов: объема базы данных, объема файлов, размера приложения и производительности/загруженности сервера, на котором развернут DEVPROM.

Зависание прогресса выполнения резервного копирования связано с небольшим значением времени жизни сессии, устанавливаемой между браузером и apache. Чтобы увеличить это время необходимо открыть конфигурационный файл httpd.conf и указать следующее значение параметра:


 KeepAliveTimeout 300

6. Не удается выполнить инсталляцию DEVPROM на хостинге.

При попытке установить приложение DEVPROM возникают сообщения об ошибках: "невозможно создать базу данных" или "невозможно создать структуру базы данных". Подобное поведение возможно, если у хостера отключена функция shell_exec, то есть выполнение скриптов при помощи mysql невозможно.

В данном случае вам необходимо выбрать обе опции "Пропустить создание базы данных" и "Пропустить создание структуры базы данных" и завершить установку. После этого, необходимо скачать файл /admin/devprom.sql и выполнить его на базе данных, например, при помощи phpMyAdmin, который предоставляется хостингом для управления вашими базами данных.

После того, как скрипт успешно прольется на базе данных, вы можете начать использовать DEVPROM, приложение будет установлено.

7. Проблемы с установкой DEVPROM на OpenSUSE 11.x

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


 
 В OpenSUSE 11.1 zip стоит 2.6 и он не понимает ваших вызовов. Какая версия zip нужна?
 Т.е. инсталяция не проходит с диагностикой "нет зипа", а если выставить в настройках 
 PHP "error_reporting=E_ALL" то в лог падает неверный параметр команды :)
 
 Собственно разобрался- надо обновить до 3ки.
 Вообще на OpenSUSE 11.1 не ставится толком девпром- mysql тоже слишком старый, 
 OpenSSL не включается и т.п. 
 Вот 11.4- другое дело.
 

8. Не удается залогиниться в систему, либо не работает интеграция с Subversion

После успешного создания учетной записи пользователя под ней не удается войти в систему. Либо при указании корректных параметров подключения к Subversion выдается сообщение об отсутствии модуля SASL, хотя все необходимые настройки выполнены в соответствии с инструкцией по установке.

Проблема может возникать из-за отсутствия поддержки openssl в MySQL, то есть алгоритм шифрования DES не работает. Необходимо изменить алгоритм шифрования, используемый системой. Для этого необходимо открыть файл settings_server.php и установить следующее значение:


 // MySQL encryption algorithm
 define('MYSQL_ENCRYPTION_ALGORITHM', 'AES');

9. Не удается запланировать пожелание, не создаются задачи

Если пожелания создаются и выполняются, но не могут быть запланированы, то проблема может быть в дополнительном расширении PHP, которое ограничивает передачу на сервер переменные. Одним из таких расширений является suhosin.

Необходимо открыть на редактирование php.ini или suhosin.ini и задать следующие значения для параметров:


 suhosin.post.max_vars = 2000
 suhosin.request.max_vars = 2000

10. Со вкладки "Файлы" не удается загрузить файл

Максимальный размер файла, который может быть загружен в DEVPROM, либо прикреплен к пожеланиям и Wiki-страницам в качестве приложения, ограничивается настройками PHP. Для изменения этого ограничения необходимо открыть на редактирование файл php.ini и изменить следующие настройки:


 upload_max_filesize = 20M ; укажите больший объем
 register_long_arrays=On

11. Автоматически не выполняются задания по расписанию

Если приложение, запускающее выполнение заданий по расписанию, работает - pyCron для Windows, cron для Unix/Linux, то вам необходимо проверить значение поля "Имя сервера" на закладке "Настройки" в разделе администрирования DEVPROM. Если поле пустое, то необходимо ввести в него имя сервера или его IP-адрес.

Администрирование

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

Добавление пользователей

Добавление новых пользователей, а так же общее управление пользователями осуществляется в разделе Администрирование на закладке Пользователи.

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

Установите нужное значение признака Может участвовать в нескольких проектах.

Если создаваемый пользователь будет администратором локальной установки DEVPROM, необходимо отметить галку Является администратором.

После создания первого пользователя-администратора, система для дальнейшей работы потребует ввод ваших логина-пароля. Для того, чтобы продолжить работу в разделе Администрирование, вам нужно будет авторизоваться под учетными данными пользователя-администратора.

Общие настройки системы

Общие настройки системы доступны в разделе "Администрирование" на закладке "Настройки".

Название компании

Вы можете указать название вашей компании, которое будет отображаться в верхней части страниц системы

Язык интерфейса

Язык интерфейса определяет язык по-умолчанию для системы (основной), используя который начинают работать все пользователи.

Однако, каждый пользователь в настройках своего профиля может явно указать предпочитаемый язык интерфейса и таким образом практически не зависеть от настроек основного языка системы. На текущий момент поддерживаются русский и английский языки.

Дополнительные параметры языка можно настроить в списке "Языки", доступном из меню "Настройки", например, таким образом можно указать способ форматирования полей типа "Дата".

Почтовый адрес администратора

На этот адрес система будет при необходимости высылать важную информацию, такую как обращения пользователей к администратору системы или попытки подбора паролей какого-либо пользователя.

Разрешать изменение логина пользователя

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

Использование формы обратной связи

У левой границы экрана на всех страницах DEVPROM отображается ярлык, по которому вы можете открыть форму обратной связи и сообщить об ошибке в работе системы, предложить доработку или задать вопрос по продукту. Скрипт формы обратной связи загружается с сайта http://devprom.ru поэтому при отсутствии постоянного подключения к Интернет или при использовании медленных каналов связи, загрузка скрипта формы может затормаживать работу с системой. Вы можете отключить загрузку и отображение формы обратной связи.

Проект по администрированию (только для Enterprise Edition)

Для организации поддержки проектных команд вы можете создать в системе специальный проект по администрированию DEVPROM. Таким образом, если у пользователя возникают вопросы, связанные с авторизацией в системе, либо необходимостью выполнить какие-то административные задачи, то он просто создает тикет в проекте по администрированию. Пользователи могут просмотреть перечень своих тикетов и статус их обработки.

Метод авторизации

Позволяет определить способ авторизации, который применяется в системе. По умолчанию все пользователи должны вводить логин и пароль. Например, в Enterprise Edition есть возможность использования встроенной аутентификации Windows (Windows Integrated Authentication), при использовании которой пользователям достаточно ввести пароль один раз при авторизации в Windows.

Название и порт сервера

Система пытается автоматически определить название сервера, на котором она установлена, путем анализа переменных окружения. Рекомендуем явно задать название сервера. При необходимости вы можете явно указать порт, по которому доступно приложение.

Способ доставки почты

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

  • SMTP - настройка параметров данного подключения для Linux-систем не осуществляется (используется по умолчанию), а для Windows-систем может быть выполнена в файле sendmail.ini: Настройка почтовых уведомлений (SMTP)
  • IMAP - настройка параметров осуществляется в файле: htdocs/co/system/c_imap_settings.php

Параметры

Это неизменяемое поле отображает параметры, установленные в конфигурационных файлах приложения DEVPROM.

Установка обновлений и плагинов

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

Процедура установки плагинов к DEVPROM аналогична процедуре установки обновлений до новых версий. Список доступных плагинов вы можете найти в соответствующем разделе страницы загрузки.

Процедура установки

Для установки вам необходимо скачать требуемое обновление, которое представляет собой простой zip-архив. Далее вам необходимо перейти на закладку "Администрирование" и в списке обновлений перейти по ссылке "Установить". Перед установкой обновления автоматически будет создана резервная копия системы, поэтому данная операция является безопасной для ваших данных.

При установке обновления проверяется версия уже установленного обновления и если они совпадают, то формируется сообщение об ошибке и установка обновления прерывается. Также система проверяет наличие ранее установленных обновлений, необходимых для установки текущего. Если требуемого обновления не найдено, то формируется сообщение об ошибке. Вам необходимо установить требуемое обновление и повторно выполнить установку нужного вам обновления.

Структура файла обновления

Файл обновления содержит некоторые управляющие файлы, назначение которых описано ниже:

  • devprom/required.txt - список версий, разделенных запятой, наличие одной из которых является обязательным условием установки обновления. Если в системе не обнаружено ни одной из перечисленных версий, то установка обновления прекращается и пользователь получает сообщение об ошибке. Если данного файла нет, то проверка на наличие обязательных версий не выполняется.
  • devprom/version.txt - номер версии системы, который будет присвоен текущему экземпляру DEVPROM при успешной установке на него данного обновления. Если в системе уже установлено обновление этой версии, то процесс установки обновления будет остановлен и пользователь получит соответствующее сообщение об ошибке. Если данного файла нет, то проверка на наличие данной версии не выполняется и установка обновления продолжается дальше.
  • devprom/update.sql - изменения базы данных, которые должны быть применены к базе данных экземпляра DEVPROM, на который выполняется установка обновления.

В каталоге htdocs располагаются файлы приложения DEVPROM.

Резервное копирование

Чтобы избежать потери данных, обязательно настройте и периодически проверяйте работоспособность механизма автоматического создания резервных копий.

Автоматическое создание резервных копий

Для создания резервных копий в DEVPROM используется программа-планировщик заданий cron.

При установке DEVPROM инсталлятором (под Windows), автоматически создается и запускается сервис с именем cron и настраивается еженочное резервное копирование данных (в 23:00), которое занимает от нескольких секунд до минут, в зависимости от размеров проектов.

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

Файлы аттачей в настоящее время не копируются, в случае необходимости этот процесс можно настроить вручную.

Ручное создание резервных копий

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

В разделе Администрирование на одноименной закладке расположен раздел Резервное копирование, в котором есть ссылка Добавить резервную копию.

Мы рекомендуем вручную создавать резервные копии перед установкой каждого обновления системы.

Сохранение резервных копий на внешнем носителе

Каждую резервную копию системы можно сохранить на локальной машине, воспользовавшись ссылкой Скачать. Резервная копия представляет собой .zip архив.

Восстановление из резервной копии

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

Если по каким-то причинам вы полностью потеряли работоспособный экземпляр DEVPROM, то вам необходимо выполнить следующие шаги:

  1. Установить DEVPROM при помощи инсталлятора, либо другим доступным способом
  2. Скопировать файлы резервной копии, включая архив базы данных и пользовательские файлы, в каталог backup
  3. Зайти в раздел администрирования и убедиться, что на закладке "Администрирование" в списке резервных копий появилась запись.
  4. Выбрать действие "восстановить" для резервной копии.

Автоматическая диагностика системы

Данный механизм осуществляет проверку настроек приложения или окружения, в котором оно работает, в автоматическом режиме, сообщая администраторам системы об обнаруженных несоответствиях, которые необходимо устранить.

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

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

Если проверка не выполняется, но исправить это не представляется возможным, либо важным, то администратор может просто отключить выполнение данной проверки, путем выбора соответствующего пункта меню "Операции".

Загрузка пользователей из LDAP-сервера

Если в вашей компании используется служба каталогов, например Active Directory, OpenLDAP или ApacheDS, то для быстрой загрузки огранизационной структуры и учетных записей пользователей в DEVPROM вы можете воспользоваться модулем импорта из LDAP.

Модуль представляет собой мастер, состоящий из нескольких шагов, и доступен в разделе "Администрирование", в меню "Настройки":

  • На первом шаге необходимо указать параметры подключения к LDAP-серверу, указать домен верхнего уровня, начиная с которого будет выполняться поиск объектов, а также запрос для поиска объектов. По умолчанию запрос поиска уже содержит необходимые критерии поиска объектов, совместимые с Active Directory и ApacheDS. Далее приводятся возможные варианты задания параметров:
    • Имя и порт LDAP-сервера: localhost:10389
    • Учетная запись пользователя для подключения к LDAP-серверу: uid=admin,ou=system
    • Домен верхнего уровня: ou=system
  • На втором шаге отображается иерархия объектов, загруженных из каталога. Организационные единицы и группы отмечены иконками с изображением папки. Учетные записи отображаются без иконок. Вам необходимо отметить галочками те узлы, которые необходимо импортировать, при этом, учетные записи будет импортированы как пользователи, а организационные единицы - как группы пользователей.
  • На третьем шаге отображается содержимое лога, сформированного в результате импорта данных из каталога. В логе отображается информация о том какие пользователи были созданы, какие обновлены, какие группы созданы и в какие группы были включены пользователи. Вы также можете отметить галочкой создание задачи по периодическому обновлению импортированных ранее учетных записей. При выполнении этой задачи будут обновляться адрес электронной почты, описание пользователя.

Тонкая настройка

Различные службы каталогов могут по-разному определять атрибуты, классы объектов и т.п. Подобные специфические параметры определены в файле настроек: htdocs/plugins/ee/system/settings_ldap_ad.php


 // запрос дочерних узлов по идентификатору родительского узла (%1)
 define('LDAP_TREEQUERY','(memberOf=%1)');
 
 // атрибут определяющий название группы (организационной единицы)
 define('LDAP_GROUP_ATTR','cn');
 
 // атрибут определяющий название учетной записи пользователя (имя пользователя)
 define('LDAP_TITLE_ATTR','cn');
 
 // атрибут определяющий логин пользователя в Windows
 define('LDAP_LOGIN_ATTR','userprincipalname');
 
 // атрибут определяющий адрес электронной почты учетной записи
 define('LDAP_EMAIL_ATTR','mail');
 
 // атрибут определяющий описание учетной записи пользователя
 define('LDAP_DESCRIPTION_ATTR','title');
 
 // название атрибута OU
 define('LDAP_ATTR_OU','ou');
 
 // название атрибута DN
 define('LDAP_ATTR_DN','dn');
 
 // название атрибута CN
 define('LDAP_ATTR_CN','cn');
 
 // название атрибута, определяющей вхождение объекта в другой объект
 define('LDAP_ATTR_MEMBEROF','memberof');
 
 // список классов, соответствующих учетной записи пользователя
 define('LDAP_CLASS_OP','organizationalPerson,person');
 
 // список классов, соответствующих организационной единице (группе)
 define('LDAP_CLASS_OU','organizationalUnit,groupOfUniqueNames,group');

Журнал подключений к LDAP

В файле htdocs/plugins/ee/system/logger.xml прописан путь к логу подключений к LDAP-серверу. При необходимости вы можете его использовать для выявления проблем при импорте объектов из службы каталогов.

Встроенная аутентификация Windows

Для того, чтобы сократить число различных учетных записей пользователей и упростить авторизацию в различных системах предприятия, используют технику SSO (Single Sign-On), позволяющую авторизоваться на рабочем месте один раз и работать с приложениями, используя автоматическую аутентификацию. Для ОС Windows этот механизм называется Integrated Windows Authentication.

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

  1. Логин учетной записи пользователя должен соответствовать логину учетной записи Windows.
  2. В настройках системы необходимо указать метод авторизации: встроенная аутентификация Windows.
  3. В настройках Apache для каталога, в котором развернут DEVPROM, необходимо прописать следующие настройки:


 <Directory "C:\DEVPROM\apache\htdocs">
   ...
   AuthName "Intranet"
   AuthType SSPI
   SSPIAuth On
   SSPIAuthoritative On
   SSPIOfferBasic On
   SSPIPerRequestAuth On
   require valid-user
   ...
 </Directory>

h5 Linux инсталляция

  • Необходимо убедиться, что к настройках Apache включен модуль mod_ntlm (или mod_ntlm_winbind)

Смешанная аутентификация

Если вам необходимо оставить доступ в систему по паролю, например, для внешних пользователей, то вы можете использовать вариант смешанной аутентификации. При этом в настройках Apache необходимо закомментировать строчку:


 <Directory "C:\DEVPROM\apache\htdocs">
   ...
   # require valid-user
   ...
 </Directory>

Последние новости

Следите за развитием событий!