Инструкция предназначена для добавления модуля Р7-Контакты в Корпоративный сервер 2024.
Процедура может потребоваться при обновлении Корпоративного сервера 2024 до актуальной версии, если в существующей установке отсутствует модуль Р7-Контакты.
В процессе настройки необходимо:
- создать DNS-запись для модуля;
- добавить конфигурацию модуля в Nginx;
- указать адрес Р7-Контакты в базе данных;
- добавить приложение «АРМ Контакты» в настройки Р7-Управление;
- установить файлы модуля;
- проверить доступность Р7-Контакты.
Перед началом работы
Перед выполнением инструкции убедитесь, что:
- у вас есть доступ к серверу с установленным Корпоративным сервером 2024;
- у вас есть права для изменения конфигурации Nginx;
- у вас есть права на подключение к базе данных PostgreSQL;
- для модуля определено DNS-имя;
- вы можете получить архив с файлами модуля Р7-Контакты через службу технической поддержки.
В примерах ниже используются доменные имена calendar.devr7.ru и contacts.devr7.ru. Это демонстрационные значения. При настройке используйте собственное DNS-имя, созданное для Р7-Контакты.
1. Создайте A-запись в DNS
Для Р7-Контакты необходимо создать отдельную A-запись в DNS.
Пример записи в DNS:

Эта запись должна указывать на IP-адрес сервера, на котором размещается модуль Р7-Контакты.
После создания DNS-записи убедитесь, что указанное имя разрешается в нужный IP-адрес.
Доменное имя, указанное в DNS, в дальнейшем необходимо использовать в конфигурации Nginx и при настройке адреса модуля в базе данных.
Например, если создана запись: contacts.devr7.ru, то именно это имя должно использоваться в параметре server_name и в значении contactsUrl.
2. Настройте сервер с Корпоративным сервером 2024
Все следующие действия выполняются на сервере, где установлен Корпоративный сервер 2024.
2.1. Создайте конфигурационный файл Nginx
Для Р7-Контакты используется отдельная конфигурация Nginx.
Выберите команду в зависимости от операционной системы.
2.1.1. Astra Linux
Скопируйте конфигурацию модуля «Календарь»:
cp -p /etc/nginx/sites-available/calendar /etc/nginx/sites-available/contacts
Создайте символическую ссылку:
ln -s /etc/nginx/sites-available/contacts /etc/nginx/sites-enabled/contacts
2.1.2. РЕД ОС
Скопируйте конфигурацию:
cp -p /etc/nginx/sites-available/calendar /etc/nginx/sites-available/contacts
Создайте конфигурацию в conf.d:
ln -s /etc/nginx/sites-available/contacts /etc/nginx/conf.d/contacts-site.conf
3. Настройте конфигурацию Р7-Контакты в Nginx
Откройте созданный файл:
/etc/nginx/sites-available/contacts
В конфигурации необходимо изменить параметры, которые относятся к модулю «Календарь».
В исходной конфигурации используются, например:
root /var/www/r7-office/calendar;
и
server_name calendar.devr7.ru;
Для Р7-Контакты значения должны быть изменены на:
root /var/www/r7-office/contacts;
и
server_name contacts.devr7.ru;
Где:
- root — путь к каталогу с файлами модуля Р7-Контакты;
- server_name — DNS-имя, по которому пользователи будут обращаться к Р7-Контакты.
server_name должен соответствовать DNS-записи, созданной на шаге 1.
Если в качестве DNS-имени используется: contacts.company.ru, то в Nginx необходимо указать: server_name contacts.company.ru, а не демонстрационное значение contacts.devr7.ru.
3.1. Проверьте конфигурацию Nginx
После изменения конфигурации обязательно проверьте её корректность:
nginx -t
Если конфигурация корректна, Nginx сообщит об успешном прохождении проверки.
если nginx -t возвращает ошибку, не выполняйте перезагрузку Nginx. Сначала исправьте указанную в сообщении ошибку.
3.2. Примените изменения
После успешной проверки конфигурации выполните:
systemctl reload nginx
Команда применит новую конфигурацию без полной остановки Nginx.
4. Настройте Р7-Контакты в базе данных
После настройки Nginx необходимо указать адрес модуля в базе данных cddisk.
4.1. Подключитесь к базе данных
Выполните:
sudo -i -u postgres psql cddisk
После подключения будут доступны SQL-команды для настройки базы данных.
4.2. Укажите адрес Р7-Контакты
Выполните запрос, указав верный URL в блоке VALUES. В примере ниже используется https и домен devr7.ru:
INSERT INTO public."MessageSettings"("Key", "Value", "Lang")
VALUES ('contactsUrl', 'https://contacts.devr7.ru', '')
ON CONFLICT ("Key")
DO UPDATE SET
"Value" = EXCLUDED."Value",
"Lang" = EXCLUDED."Lang";Используйте тот же домен, который указали в DNS и параметре server_name конфигурации Nginx.
Исходная инструкция также предусматривает использование протокола https.
4.3. Добавьте Р7-Контакты в Р7-Управление
Для добавления настройки доступа к модулю выполните:
INSERT INTO public."Applications"("Key", "Name")
SELECT 'contacts', 'АРМ Контакты'
WHERE NOT EXISTS(
SELECT "Key"
FROM public."Applications"
WHERE "Key" = 'contacts'
);Этот запрос добавляет приложение «АРМ Контакты», если такая запись ещё отсутствует.
Условие WHERE NOT EXISTS предотвращает повторное добавление записи при повторном выполнении команды.
5. Добавьте файлы статики
Для работы Р7-Контакты необходимы файлы статики.
5.1. Получение архива с файлами статики
Получить архив через обращение в support@r7-office.ru архив вида contacts_2203.zip.
5.2. Распаковка архива
Распакуйте по пути, который указали в п.3. В примере ниже путь указан по умолчанию:
unzip contacts_2203.zip -d /var/www/r7-office/contacts chmod 755 -R /var/www/r7-office/contacts













