Я пытаюсь встроить панель управления Kibana с помощью Nginx, но получаю пустой экран. Ошибки не выдаются (за исключением ожидаемой ошибки «встроенного сценария»), но ничего не загружается. Kibana развернута в облаке Azure, и у меня нет прав администратора, поэтому я не могу редактировать файл .yaml. Я пытаюсь встроить Kibana в свое приложение Angular, используя iframe.
Вот мой файл конфигурации Nginx:
рабочие_процессы 1;
События {
worker_connections 1024;
}
http {
включить mime.types;
default_type application/octet-stream;
отправить файл включен;
keepalive_timeout 65;
сервер {
слушать 80;
имя_сервера локальный;
место расположения / {
корень html;
индекс index.html index.htm;
}
расположение /API {
proxy_pass http://localhost:8080/<client>/api;
прокси_http_версия 1.1;
proxy_set_header Обновить $http_upgrade;
proxy_set_header Соединение «обновление»;
proxy_set_header Хост $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
}
местоположение /кибана/ {
add_header X-моя отладка $http_referer;
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<порт>/;
sub_filter_once выключен;
sub_filter 'src="bootstrap.js' 'src="/kibana/bootstrap.js';
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Authorization '<auth-info>';
proxy_set_header X-Found-Cluster cbca73a5db19409287b3e17ef1a3df82;
proxy_set_header Хост $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $ схема;
proxy_set_header Соединение "Keep-Alive";
proxy_set_header Прокси-соединение "Keep-Alive";
прокси_перенаправление выключено;
add_header Content-Security-Policy "script-src 'self' <имя-компании>.azure.elastic-cloud.com:<port> 'unsafe-inline' 'unsafe-eval';" всегда;
}
расположение /bootstrap.js {
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<порт>/bootstrap.js;
add_header Content-Security-Policy "script-src 'self' https://<company-name>.azure.elastic-cloud.com:<port> 'unsafe-inline' 'unsafe-eval';" всегда;
}
местоположение /39457/ {
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<порт>/39457/;
add_header Content-Security-Policy "script-src 'self' https://<company-name>.azure.elastic-cloud.com:<port> 'unsafe-inline' 'unsafe-eval';" всегда;
}
местоположение /переводы/ {
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<порт>/translations/;
}
расположение /node_modules/@kbn/ui-framework/dist/kui_light.css {
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<порт>/node_modules/@kbn/ui-framework/dist/kui_light.css;
}
расположение /ui/legacy_light_theme.css {
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<порт>/ui/legacy_light_theme.css;
}
расположение /API/ядро/возможности {
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<порт>/api/core/capabilities;
}
местоположение /ui/шрифты/inter_ui/ {
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<порт>/ui/fonts/inter_ui/;
}
расположение /внутреннее/ {
proxy_set_header Authorization '<auth-info>';
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<порт>/internal/;
}
расположение /API/лицензирование/информация {
proxy_set_header Authorization '<auth-info>';
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<порт>/api/licensing/info;
}
расположение /api/saved_objects_tagging/tags {
proxy_set_header Authorization '<auth-info>';
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<порт>/api/saved_objects_tagging/tags;
}
расположение/выход {
proxy_set_header Authorization '<auth-info>';
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<порт>/logout;
}
местоположение /api/ui_counters/_report {
proxy_set_header Authorization '<auth-info>';
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<port>/api/ui_counters/_report;
}
расположение /API/безопасность/выход {
proxy_set_header Authorization '<auth-info>';
proxy_pass https://<имя-компании>.azure.elastic-cloud.com:<порт>/api/security/logout;
}
# перенаправить страницы ошибок сервера на статическую страницу /50x.html
error_page 500 502 503 504 /50x.html;
}
}
и у меня также есть это в моем index.html:
<meta http-equiv="Content-Security-Policy"
content="
script-src 'self' https://<company-name>.azure.elastic-cloud.com:<port> 'unsafe-inline' 'unsafe-eval';
frame-src 'self'https://<company-name>.azure.elastic-cloud.com:<port> 'unsafe-inline';
style-src 'self' https://<company-name>.azure.elastic-cloud.com:<port> 'unsafe-inline';"
>