Установка адаптера для обмена данными интеграционной шиной
Установка адаптера для обмена данными с интеграционной шиной требуется в случае работы с модулем «Студент» (Личный кабинет студента - ЛКС). Для использования модуля «Абитуриент» (Личный кабинет абитуриента - ЛКА) установка адаптера не требуется.
Содержание
Требования к серверу
Адаптер для обмена данными с НСИ работает в качестве отдельного микросервиса, подключенного к базе данных Личного кабинета.
Для установки приложения должны выполняться следующие требования:
- Установленное приложение Личного кабинета
- PHP = 7.4. На более ранних версиях PHP приложение работать не будет.
- Установленное расширение JSON
- Установленное расширение SOAP
- Установленное расширение Mbstring
- Установленное расширение OpenSSL
- Установленное расширение PDO
- MySQL 8 или MariaDB >= 10.4.
- Composer 2.0
- Node.js >= 6.14
- Git >= 2.25
Установка приложения
Прежде всего необходимо убедиться, что есть доступ к репозитарию. В терминале необходимо выполнить команду:
ssh -T git@bitbucket.org
Среди доступных репозитариев должен быть следующий:
...
tandem_mind/nsi-adapter
...
Далее необходимо скопировать последнюю версию приложения:
git clone git@bitbucket.org:tandem_mind/nsi-adapter.git
После завершения копирования приложения необходимо установить требуемые зависимости. Перейдите в папку приложения и выполните команду:
composer install --no-dev
Настройка
Настройка окружения
Перейдите в директорию приложения и откройте файл .env
. Если его нет, то создайте копию файла .env.example
и
переименуйте его в .env
.
Создайте криптографический ключ:
php artisan key:generate
Откройте файл
.env
.Настройте название приложения:
APP_NAME="Адаптер НСИ" APP_ENV=production APP_KEY=base64:Z234567890900NEb1TmOzWC5673nM5zLHb6h30o4n90c= APP_DEBUG=FALSE APP_URL=http://<URL приложения> APP_TIMEZONE=UTC
Настройте параметры соединения с БД:
Необходимо указать реквизиты базы данных, которую использует приложение личных кабинетов (Настройка окружения).
```
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=dbname
DB_USERNAME=dbuser
DB_PASSWORD=password
```
Настройте параметры аутентификации в НСИ:
NSI_SUBSYSTEM_LOGIN=login NSI_SUBSYSTEM_PASSWORD=password
Итоговый файл может иметь следующий вид:
APP_NAME="Адаптер НСИ"
APP_ENV=production
APP_KEY=base64:Z234567890900NEb1TmOzWC5673nM5zLHb6h30o4n90c=
APP_DEBUG=FALSE
APP_URL=http://<URL приложения>
APP_TIMEZONE=UTC
LOG_CHANNEL=stack
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=dbname
DB_USERNAME=dbuser
DB_PASSWORD=password
NSI_SUBSYSTEM_LOGIN=login
NSI_SUBSYSTEM_PASSWORD=password
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
Настройка директории public
Для работы приложения необходимо настроить корневую папку, из которой будет запускаться приложение. В директории приложения
находится папка public
, а внутри папки находится файл index.php
. Необходимо настроить виртуальный хост веб-сервера
таким образом, чтобы он указывал на папку public
.
Права доступа к директориям
Все вложенные папки и файлы в директориях storage
и bootstrap/cache
должны быть доступны для чтения и записи веб-сервером.
В ОС Windows веб-сервер чаще всего запускается от имени самого пользователя, поэтому обычно не требуется дополнительных
настроек прав доступа.
В ОС Linux настройку можно сделать двумя способами:
Веб-сервер как владелец приложения
Предполагается, что /var/www/html/laravel/root/directory
— путь до директории приложения, имя вашего пользователя
tandem
, а имя пользователя для веб-сервера www-data
. Замените данные параметры на свои и выполните команды в терминале:
sudo chown -R www-data:www-data /var/www/html/laravel/root/directory
sudo usermod -a -G www-data tandem
И затем настройте права доступа:
sudo find /var/www/html/laravel/root/directory -type f -exec chmod 644 {} \;
sudo find /var/www/html/laravel/root/directory -type d -exec chmod 755 {} \;
Пользователь как владелец приложения
Предполагается, что /var/www/html/laravel/root/directory
— путь до директории приложения, имя вашего пользователя
tandem
, а имя пользователя для веб-сервера www-data
. Замените данные параметры на свои и выполните команды в терминале:
sudo chown -R tandem:www-data /var/www/html/laravel/root/directory
И затем настройте права доступа:
sudo find /path/to/your/laravel/root/directory -type f -exec chmod 664 {} \;
sudo find /path/to/your/laravel/root/directory -type d -exec chmod 775 {} \;
Дальнейшие действия
Следующим этапом является настройка веб-сервера для работы с установленным сервисом. В результате сервис становится доступным
по определенному URL, например 192.168.0.22:8080
. Данный URL, а также значения параметров NSI_SUBSYSTEM_LOGIN
и NSI_SUBSYSTEM_PASSWORD
необходимо вписать в форме добавления новой подсистемы в НСИ.