Настройка Nginx-сервера
Для корректной работы модулей продукта «Кабинет администратора» и «Магазин приложений» необходимо переопределить значения параметров по умолчанию в следующих конфигурационных файлах Nginx-сервера:
-
inno-lcm-webadmin— путь к файлу:/etc/nginx/sites-available/lcm-web-ui.conf; -
inno-lcm-app-shop— путь к файлу:/etc/nginx/sites-available/lcm-app-shop-ui.conf.
Настройки являются идентичными для каждого из модулей, поэтому ниже рассмотрен вариант
настройки на примере модуля inno-lcm-webadmin.
Пример конфигурационного файла с настройками по умолчанию
server {
listen 80;
listen [::]:80;
server_name staging-lcm.terra.inno.tech lcm-web-ui.local;
root /var/www/lcm-web-ui;
index index.html;
error_log /var/log/nginx/error.log debug;
access_log /var/log/nginx/access.log;
location / {
try_files $uri $uri/ /index.html;
}
location /api {
set $backend_uri http://127.0.0.1:8081;
rewrite ^\/api(\/.*)$ $1 break;
proxy_pass $backend_uri;
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;
}
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name staging-lcm.terra.inno.tech lcm-web-ui.local;
root /var/www/lcm-web-ui;
index index.html;
ssl_certificate /etc/certs/TERRA_INNO_TECH_CRT;
ssl_certificate_key /etc/certs/TERRA_INNO_TECH_KEY;
error_log /var/log/nginx/error.log debug;
access_log /var/log/nginx/access.log;
location / {
try_files $uri $uri/ /index.html;
}
location /api {
set $backend_uri http://127.0.0.1:8081;
#set $backend_uri http://172.28.15.145:5000;
rewrite ^/api(/.*)$ $1 break;
proxy_pass $backend_uri;
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;
}
}
Где:
-
listen— настраивает прослушивание портов на сервере; -
server_name— доменное имя, которые будут обслуживаться сервером; -
root— указывает директорию, в которой находятся статические файлы, отображаемые при запросе корневой директории; -
index— задает стандартный файл, который будет отображаться при запросе корневой директории; -
ssl_certificate— указывает SSL-сертификат для обеспечения безопасного соединения; -
ssl_certificate_key— определяет путь к файлу приватного ключа SSL-сертификата; -
error_log— указывает файл логов для логирования ошибок; -
access_log— указывает файл логов для логирования ошибок доступа; -
location /— указывает Nginx на поиск запрашиваемых файлов в директорииroot; и если файл будет не найден, указывает на файлindex.html. -
location /api— настраивает проксирование запросов к API-серверу;-
proxy_pass— директива, перенаправляющая запросы к/apiна указанный сервер; -
proxy_set_header— директива, устанавливающая необходимую информацию в заголовках запроса.
-
Чтобы задать рабочую конфигурацию, выполните действия:
Для передачи данных по HTTP переопределите значения только в первом блоке server; для передачи по
HTTPS — также переопределите значения во втором блоке.
|
-
В первом блоке
serverв полеserver_nameукажите имя домена. -
В первом блоке
serverв полеlocation /apiзадайте адрес обращения к бэкенду. -
(Опционально) во втором блоке
serverв полеserver_nameукажите имя домена. -
(Опционально) во втором блоке
serverв полеlocation /apiзадайте адрес обращения к бэкенду. -
(Опционально) в поле
ssl_certificateукажите SSL-сертификат для обеспечения безопасного соединения. -
(Опционально) в поле
ssl_certificate_keyзадайте путь к файлу приватного ключа SSL-сертификата. -
Чтобы внесенные изменения вступили в силу, перезапустите Nginx, выполнив команду:
sudo service nginx restart
| Подробнее о работе с Nginx-сервером см. в официальной документации. |