У меня есть приложение реагирования, работающее под nginx.Приложение работает нормально и проблем нет.
Теперь у меня на одном сервере запущены kibana и portainer, и я настроил nginx для их запуска в качестве подпапки.На сервере есть сертификат безопасности, и я не могу создать новые субдомены.Поэтому мне пришлось пойти с подпапками.
server {
listen 80;
listen 443 ssl;
server_name api.nec.private.systems;
ssl_certificate /etc/ssl/api.nec.private.systems.crt;
ssl_certificate_key /etc/ssl/api.nec.private.systems.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
root /usr/share/nginx/html;
location / {
# Set path
try_files $uri /index.html;
}
# Do not cache sw.js, required for offline-first updates.
location /sw.js {
add_header Cache-Control "no-cache";
proxy_cache_bypass $http_pragma;
proxy_cache_revalidate on;
expires off;
access_log off;
}
location /control/ {
proxy_pass http://portainer:9000/;
add_header Cache-Control "no-cache";
proxy_cache_bypass $http_pragma;
proxy_cache_revalidate on;
expires off;
access_log off;
}
location /kibana/ {
proxy_pass http://kibana:5601/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
# proxy_cache_bypass $http_upgrade;
add_header Cache-Control "no-cache";
proxy_cache_bypass $http_pragma;
proxy_cache_revalidate on;
expires off;
access_log off;
}
}
Как вы можете видеть, первые две локации описывают приложение реагирования, а последние две - о кибане и поратинере.
Теперь здесьпроблема:
1) Я бы открыл Google Chrome и зашел на api.nec.private.systems/control - он без проблем запустил бы Portainer.2) Я бы открыл api.nec.private.systems/kibana и получил бы кибану, как и ожидалось.3) Я бы открыл api.nec.private.systems/, и откроется приложение реагирования с маршрутизатором реагирования.4) Теперь, выполнив шаг № 3, я открою api.nec.private.systems/kibana, и он больше не будет открывать кибану, скорее, он попытается передать / kibana в моем маршрутизаторе.Это не будет открывать кибану вообще.Независимо от того, сколько я бы попробовал.
x) Шаг номер X - очистить кэш Google Chrome и попробуйте снова - kibana и poirtainer работают просто отлично.Пока я не открою приложение «Реакция».
Есть идеи?