﻿# Настройка Nginx для работы ELMA365 через обратный прокси 

> [HTML Version](nginx-elma365-.html)

Обратный прокси предназначен для переадресации запросов, приходящих от внешних пользователей на сервер, расположенный в корпоративной сети предприятия. Обратный прокси устанавливается на шлюзе компании, который имеет:

- как минимум один публичный (белый) IP-адрес, на который приходят запросы из сети интернет;

- подключение к корпоративной сети, например 192.168.1.0/24.

Для работы обратного прокси необходимо зарегистрировать доменное имя и добавить A-запись в DNS, указывающую на публичный IP-адрес обратного прокси. Можно зарегистрировать неограниченное количество доменных имён на один IP-адрес и, в зависимости от доменного имени, распределить приходящий трафик на разные серверы внутри корпоративной сети с помощью директивы **proxy\_pass**.

Для примера используется доменное имя **elma365client.domain.com**.

В сети предприятия в примере используется IP-адрес 192.168.1.10, на котором расположен сервер с приложением ELMA365.

````
начало внимание

````
Корректная работа приложения ELMA365 невозможна через проброс портов (Port Forwarding). В статье приводится пример работы с использованием Nginx в качестве обратного прокси-сервера.

````
конец внимание

````
Конфигурация обратного прокси для приложения ELMA365 на примере Nginx:

````
server \{  
    listen 80;  
    server\_name elma365client.domain.com; #внешний домен, по которому будет доступна ELMA365  
    return 301 https://\$server\_name\$request\_uri;   
\}  
   
server \{  
    listen 443 ssl http2;  
    server\_name elma365client.domain.com; #внешний домен, по которому будет доступна ELMA365  
   
    ssl\_certificate /etc/nginx/cert.crt;  
    ssl\_certificate\_key /etc/nginx/cert.key;  
    client\_max\_body\_size 0;  
   
    location / \{  
        proxy\_pass http://192.168.1.10; #ip-адрес сервера, на котором установлена ELMA365  
        proxy\_http\_version 1.1;  
        proxy\_cache\_bypass \$http\_upgrade;  
          
        proxy\_set\_header Upgrade \$http\_upgrade;  
        proxy\_set\_header Connection "upgrade";  
        proxy\_set\_header Host \$host;  
        proxy\_set\_header X-Real-IP \$remote\_addr;  
        proxy\_set\_header X-Forwarded-For \$proxy\_add\_x\_forwarded\_for;  
        proxy\_set\_header X-Forwarded-Proto \$scheme;   
\}\}

````
В процессе установки или при реконфигурации в поле **Enter host** необходимо прописать внешний домен **elma365client.domain.com**,** **по которому будет доступна ELMA365, а также:

- в On-Premises Standard включите параметр \[OBJECT\];

- в On-Premises Enterprise в файле \[OBJECT\] для параметра \[OBJECT\] введите значение \[OBJECT\].

````
начало примечание

````
**Примечание**

Для работы веб-сокетов в приложении обязательны параметры:

- **proxy\_http\_version 1.1**;

- **proxy\_set\_header Upgrade \$http\_upgrade**;

- **proxy\_set\_header Connection "upgrade".**

````
конец примечание
````