Установка системы заявок (helpdesk) OpenSupports на сервер
OpenSupports — это опенсорс система заявок (hrlpdesk). Лёгкий интерфейс, возможность работы с тикетами как с авторизацией по email, так и без авторизации пользователей вовсе, предлагая создать тикет через форму и следить за ним по выданному ID. Коротко о всех фишках можно посмотреть тут, а ещё можно покрутить демку онлайн. Разве что для счастья нехватает авторизации через LDAP, но на git разработчики уверяли что обязательно допилят данный функционал. Приступим к установке!
Для начала установим чистую Ubuntu на сервер. Для этого я взял установочный образ ubuntu-18.04.1.0-live-server-amd64. Не думаю что с этим могут возникнуть проблемы. Далее далее ок готово! А вот систему лучше обновить. Подключаемся к серверу через Putty или через CMD
sudo apt update sudo apt upgrade
sudo apt-get install tasksel sudo tasksel install lamp-server
Настройка Apache2
Включим модуль mpm_prefork. Этот модуль будет использоваться для обработки запросов. Ну и mod_rewrite соответственно тоже включим.
sudo a2dismod mpm_event sudo a2dismod mpm_worker sudo a2enmod mpm_prefork sudo a2enmod rewrite
Использование файлов htaccess для настроек будет возможным после того как изменим значение AllowOverride с None на All для определённых директорий (/var/www).
sudo nano /etc/apache2/apache2.conf
Как поменяли, перезапускаем Apache
sudo systemctl restart apache2
Создадим директорию для системы OpenSupports, куда далее скачаем и распакуем архив с программой
sudo mkdir -p /var/www/html/opensupports
Теперь переходим в новый каталог, качаем архив, устанавливаем приложение zip (если его нет), распаковываем файлы и после удалим архив.
cd /var/www/html/opensupports wget -O opensupports.zip https://github.com/opensupports/opensupports/releases/download/v4.4.0/opensupports_v4.4.0.zip sudo apt-get install zip unzip opensupports.zip rm -R opensupports.zip
Теперь давайте нашего пользователя включим в группу, у которой будут права на редактирование этой директории
sudo groupadd webmasters sudo gpasswd -a username webmasters sudo chown -R root:webmasters /var/www/html/opensupports sudo chmod 775 /var/www/html/opensupports
Пришло время для создания хост файла
nano /etc/apache2/sites-available/opensupports.conf
ServerAdmin opensupports@itlocate.ru ServerName opensupports DocumentRoot /var/www/html/opensupports Options FollowSymLinks AllowOverride All /var/www/html/opensupports/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/AllowOverride All Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all ErrorLog $/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog $/access.log combined
Теперь, если мы перейдём в /etc/apache2/sites-available/, то увидим там помимо только что созданного хост файла ещё два стандартных. Давайте их отключим, включив наш хост.
sudo a2dissite default-ssl.conf sudo a2dissite 000-default.conf sudo a2ensite opensupports.conf
sudo systemctl reload apache2
Настройка PHP
Включим использование шорттегов, если они отключены. Ишем параметр и изменяем его при необходимости (short_open_tag = On)
sudo nano /etc/php/7.2/apache2/php.ini
Как поменяли, перезапускаем Apache
sudo systemctl restart apache2
Настройка MySQL
Настроем бд MySQL, затем создадим пользователя и дадим ему права на базу данных. Всё что зелёным цветом — замените на свои данные.
sudo mysql_secure_installation
mysql -u root -p CREATE DATABASE database_name; GRANT ALL PRIVILEGES ON database_name.* TO username@localhost IDENTIFIED BY 'password'; exit
Продолжаем установку через веб браузер
По сути всё о чём я писал выше — это установка и настройка обычного web сервера, а установка opensupports мало чем будет отличаться от установки любой cms (к примеру wordpress). На этапах установки нам будет предложено выбрать язык, базу и данные для подключения к ней. Единственное с чем я столкнулся, так это с тем что я не мог создавать тикеты, т.к. не хватало прав на каталог. Решение ниже.
sudo chmod -R 777 /var/www/html/opensupports/api