|
|
www.lissyara.su
—> статьи
—> FreeBSD
—> WWW
—> OTRS на Apache1
OTRS. Установка под Apache 1.3
Автор: serge.
Open Ticket Request System (otrs) - открытая система обработки заявок (билетов). Otrs позволяет группе людей, занимающихся технической поддержкой каких-либо проектов, совместно работать над решением проблем пользователей.
В моем случае встала необходимость организации работы службы технической поддержки пользователей в своей организации. Применение otrs позволило мне сократить время решения некоторых вопросов до нескольких минут и дало возможность без лишних усилий вести очередность заявок, назначать заявки на исполнение своим сотрудникам и контролировать процесс их выполнения.
Так же эту систему планируется использовать для техподдержки пользователей хостинга. Otrs будет работать на одном сервере с хостингом, поэтому часть настроек приведенных ниже введена для него. Хостинг работает на связке Apache1.3 + FastCGI + MySQL50. Для повышения производительности работы otrs используется установка Perl как модуля Apache. В данной статье я рассматриваю установку otrs на чистую ОС FreeBSD 6.3-PRERELEASE #0. Но также все должно работать без изменений на других ветках и релизах.
Итак, поехали!
Для установки опций сборки портов, правим make.conf. Тут уж без комментариев.
ВНИМАНИЕ! Следующие действие затрет Ваш make.conf, если ОС рабочая. Аккуратнее с copy-past!
# cat > /etc/make.conf
DEFAULT_PHP_VER= 5
PORTSDIR?= /usr/ports
# Для apache1
.if ${.CURDIR} == ${PORTSDIR}/www/apache13-modperl
WITH_APACHE_SUEXEC= yes
APACHE_SUEXEC_DOCROOT= /
APACHE_SUEXEC_USERDIR= www
APACHE_SUEXEC_LOG= /var/log/httpd-suexec.log
.endif
# Для mysql
DEFAULT_MYSQL_VER=50
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql50-server
WITH_CHARSET= cp1251
WITH_COLLATION= cp1251_bin
WITH_LINUXTHREADS= yes
BUILD_OPTIMIZED= yes
BUILD_STATIC= yes
WITHOUT_INNODB= yes
.endif
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql50-client
WITH_CHARSET= cp1251
WITH_COLLATION= cp1251_bin
BUILD_OPTIMIZED= yes
.endif
| Ставим поочередно Apache, модуль для Apache, который автоматом не ставиться с otrs и MySQL сервер и клиент.
# cd /usr/ports/www/apache13-modperl && make install clean
# cd /usr/ports/www/p5-Apache-DBI && make install clean
# cd /usr/ports/databases/mysql50-server && make install clean
# cd /usr/ports/devel/otrs && make install clean
| Отмечаем нужные опции сборки otrs.
[X] MYSQL MySQL database support
[ ] PGSQL PostgreSQL database support
[X] REPORTS_MODULES Reports support
[X] SMTP Send email via SMTP
[ ] LDAP Enable LDAP support
[X] ISPELL Enable spell checking
[ ] GNUPG Use GnuPG
|
Вносим изменения в конфиг Apache, разрешая тем самым создание именных виртуальных хостов. Для удобства конфиги виртуальных хостов складываем отдельно.
# vi /usr/local/etc/apache/httpd.conf
...
NameVirtualHost *:80 # Снимаем коментарий
...
Include /usr/local/etc/apache/configs/*.conf # Добавляем в самый низ конфига
| Добавляем запуск Apache и MySQL в rc.conf
# echo "" >> /etc/rc.conf
# echo "# Add by Serge for otrs `date +%d-%m-%Y`" >> /etc/rc.conf
# echo 'apache_enable="YES"' >> /etc/rc.conf
# echo 'mysql_enable="YES"' >> /etc/rc.conf
| Создаем директорию для конфигов виртуальных серверов и создаем файл конфигурации для otrs.
# mkdir /usr/local/etc/apache/configs/
# cat > /usr/local/etc/apache/configs/support.server.ru.conf
<VirtualHost *:80>
ServerAdmin admin@server.ru
DocumentRoot /usr/local/otrs/var/httpd/htdocs/
ServerName support.server.ru
CustomLog /var/log/support.server.ru-access.log combined
ErrorLog /var/log/support.server.ru-error.log
ScriptAlias /otrs/ "/usr/local/otrs/bin/cgi-bin/"
Alias /otrs-web/ "/usr/local/otrs/var/httpd/htdocs/"
# загружаем все модули otrs (увеличение скорости работы!)
Perlrequire /usr/local/otrs/scripts/apache-perl-startup.pl
# Apache::StatINC - перерегрузить %INC файлы, когда они обновяться на диске
# (используйте только для тестирования, установки, но не на рабочих системах)
# (прим. автора - не забудьте закоментить после запуска системы в работу)
PerlInitHandler Apache::StatINC
<Location /otrs>
ErrorDocument 403 /otrs/index.pl
SetHandler perl-script
PerlHandler Apache::Registry
Options ExecCGI
PerlSendHeader On
PerlSetupEnv On
</Location>
<Directory "/usr/local/otrs/bin/cgi-bin/">
AllowOverride None
Options +ExecCGI -Includes
Order allow,deny
Allow from all
</Directory>
<Directory "/usr/local/otrs/var/httpd/htdocs/">
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
| Правим файл, подгружающий perl-модули otrs при запуске Apache. Здесь указываем параметры соединения с БД. Имя пользователя оставляем по умолчанию, пароль меняем на свой. (Здесь оставлен вариант по умолчанию - 'some-pass')
# vi /usr/local/otrs/scripts/apache-perl-startup.pl
...
# Снимаем коментарий
use Apache::DBI ();
# Снимаем коментарий
Apache::DBI->connect_on_init('DBI:mysql:otrs', 'otrs', 'some-pass');
...
| Стартуем Apache и MySQL. После того как MySQL создаст свои директории, копируем файл конфигурации MySQL со стандартными настройками для средне-нагруженного сервера и перезапускаем MySQL.
# /usr/local/etc/rc.d/apache start
# /usr/local/etc/rc.d/mysql-server start
# cp /usr/local/share/mysql/my-medium.cnf /var/db/mysql/my.cnf
|
# vi /var/db/mysql/my.cnf
...
skip-networking
...
|
# /usr/local/etc/rc.d/mysql-server restart
| В браузере открываем по следующей ссылке веб-инсталятор otrs. Там все пояснения на русском языке, поэтому комментариев минимум.
http://support.server.ru/otrs/installer.pl
2 шаг. Нужно указать рутовый логин и пасс от mysql. Т.к. пароль еще не задавли, оставляем как есть. Базу для otrs оставляем по-умолчанию, пароль такой же как ставили выше. У меня 'some-pass'
3 шаг. FDQN имя хоста то, что давали в конфиге виртуального сервера Apache. У меня support.server.ru
При успешном завершении, нас просят перезапустить Apache. Делаем!
# /usr/local/etc/rc.d/apache restart
| Теперь можно зайти в систему и посмотреть как она выглядит. Для этого в браузере забиваем следующую ссылку.
http://support.server.ru
Для входа в систему используем дефолтные логин и пасс.
Логин: root@localhost
Пароль: root
Часть задач otrs выполняет по расписанию. Файл планировщика (cron) заполняется скриптом автоматически. Но для того чтобы скрипт успешно отработал, необходимо у файлов с описаниями заданий убрать расширение '.dist'. Для этого используем простейший shell-скрипт, предложенный в официальной документации otrs. После переименования запускаем Cron.sh от имени пользователя otrs.
# cd /usr/local/otrs/var/cron/
# sh
# for foo in *.dist; do cp $foo `basename $foo .dist`; done
# Ctrl+d
# su otrs
# /usr/local/otrs/bin/Cron.sh start
# Ctrl+d
| В завершении не забываем устанавить пароль для root'а на MySQL.
# mysql -u root
mysql> SET PASSWORD = PASSWORD('password');
| На этом установка otrs считается законченной и можно переходить к ее настройке. Но это уже тема для отдельной статьи.
Ветка для обсуждения статьи на форуме.
размещено: 2007-12-22,
последнее обновление: 2007-12-24,
автор: serge
|
|
|
|
2014-07-27, lissyara
gmirror
Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов.
2013-08-20, zentarim
Scan+Print server FreeBSD 9
Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540
2011-11-20, BlackCat
Разъём на WiFi-карту
Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма
2011-09-14, manefesto
Настройка git+gitosis
Настройка системы контроля версия исходного кода в связке git+gitosis+ssh
2011-08-14, zentarim
Wi-FI роутер + DHCP + DNS
Настройка Wi-Fi роутера на Freebsd 8 + DNS сервер + DHCP сервер: чтобы Wi-Fi клиенты были в одной подсети с проводными, проводные и беспроводные клиенты получали адреса автоматически по DHCP, кэширующ
2011-06-15, -ZG-
Охранная система на FreeBSD+LPT
В этой статье описана попытка реализации простой охранной системы на базе FreeBSD с подключением к ней охранных устройтсв на LPT порт и видеорегистрацией.
2011-03-13, terminus
ng_nat
Описание работы ng_nat, практическое использование, достоинства и недостатки в сравнении с ipfw nat
2011-02-20, Капитан
Nagios+Digitemp
Статья описывает создание системы оповещения о превышении температуры в специальных помещениях на основе Nagios с использованием программы Digitemp.
2011-02-17, Le1
Zyxel Configuration
Скрипт для массового изменения конфига свичей Zyxel. Берет из файла iplist список ip-шек, заходит последовательно на каждый и выполняет комманды из файла commands, записывая происходящее в лог файл.
2011-02-16, fox
hast carp zfs ucarp cluster
HAST (Highly Available Storage), CARP, UCARP, ZFS, Cluster настройка и одаптация плюс личные размышления…
2011-02-04, BlackCat
Восстановление ZFS
История о том, как был восстановлен развалившийся RAIDZ ZFS-пул (перешедший в FAULTED) с помощью скотча и подручных средств. Или о том, какие приключения ожидают тех, кто не делает резервных копий.
2011-02-03, Капитан
1-Wire
Статья описывает самостоятельное изготовление контроллера DS9097 для съёма показаний с датчиков температуры DS1820 с помощью программы Digitemp.
2011-01-28, Капитан
Температура в серверной
Статья описывает построение системы наблюдения за температурой в помещении серверной с использованием программы Digitemp и выводом графиков в MRTG
2011-01-21, m4rkell
Syslog server
Как то буквально на днях, у нас завалилось, что то в еве) или не в еве не суть. Суть в том, что когда захотели снять логи с хостов esx обнаружили, что хранят эти негодяи логии только за последнии сутк
2011-01-07, lissyara
Canon/gphotofs
Монтирование цифровых фотоаппаратов Canon (PTP) как файловой системы, автоматизация этого процесса через события devd и внешние скрипты.
2010-12-13, Al
IPSec
Описание принципов работы IPSEC и способов аутентификации.
2010-12-07, manefesto
FreeBSD on flash
Было принято решении переехать на USB Flash и установить минимальный джентельменский набор для работы своего роутера. Делаем =)
2010-12-05, Fomalhaut
root ZFS, GPT
Инструкция по установке FreeBSD с использованием в качестве таблицы разделов GPT и в качестве основной файловой системы - ZFS
2010-09-05, Cancer
Настройка аудиоплеера на ximp3
Цели: Простенький аудиоплеер, для того что бы тетя продавец в магазине утром пришла нажала на кнопку Power и заиграла в зале музыка, так же был доступ по сети, общая шара куда можно заливать музыку, к
|
Статистика сайта
|
Сейчас на сайте находится: 43 чел.
|
За последние 30 мин было: 238 человек
|
За сегодня было 3171 показов, 794 уникальных IP
|
|
|
|
Этот информационный блок появился по той простой причине,
что многие считают нормальным, брать чужую информацию не уведомляя автора
(что не так страшно), и не оставляя линк на оригинал и автора — что более существенно.
Я не против распространения информации — только за. Только условие простое — извольте
подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой,
незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
Если соизволите поставить автора в известность — то вообще почёт вам и уважение.
© lissyara 2006-10-24 08:47 MSK
|
|
|
Комментарии пользователей [4 шт.]