Не удается настроить прокси-сервер Apache и обратный прокси-сервер Kibana 5.0

Я пытаюсь установить базовый обратный прокси-сервер для доступа к моему экземпляру кибаны. Здесь экземпляр кибаны (работает напрямую через: 5601 без проблем)

#server.basePath: ""
server.basePath:"/kibana"

И мой материал Apache

<VirtualHost *:80>
    Servername xxxx
    ProxyPreserveHost On
    ProxyRequests On
    ProxyPass / http://localhost:5601
    ProxyPassReverse / http://localhost:5601
</VirtualHost>

Проблема в том, что я получаю http://xxxx/

Ошибка прокси

Прокси-сервер получил недопустимый ответ от вышестоящего сервера. Прокси-сервер не может обработать запрос GET / app / kibana.

Причина: сбой поиска DNS для: localhost: 5601app

Я сделал несколько тестов, но ничего не работает. Вторая попытка с ProxyPass / http://localhost:5601/app/kibana ProxyPassReverse / http://localhost:5601/app/kibana

На этот раз лучше, но все еще не нормально. http://xxxx Я моргаю, когда вижу "кибана загружается" и вправо после большого красного сообщения

Кибана не загрузилась должным образом. Проверьте вывод сервера для получения дополнительной информации.


person glmrenard    schedule 22.11.2016    source источник


Ответы (5)


Хорошо, это было легко ... Конфигурация apache (остерегайтесь косых черт)

<VirtualHost *:80>
    Servername xxxx
    ProxyPreserveHost On
    ProxyRequests On
    ProxyPass / http://localhost:5601/
    ProxyPassReverse / http://localhost:5601/
</VirtualHost>

И пусть все по умолчанию на Kibana (без base.path)

person glmrenard    schedule 23.11.2016
comment
Для ProxyRequests необходимо установить значение Off, иначе вы неправильно настроили открытый прокси. Я редактирую это, чтобы, если кто-то вырезал и вставил это дословно, они не добавили еще один незащищенный открытый прокси в Интернет. - person JungleGenius; 23.12.2018

Попробуйте что-нибудь вроде этого

<VirtualHost *:8190>
    Servername kibana

    DirectoryIndex /app/kibana

    ProxyPass /app/kibana http://kibana:5601/app/kibana
    ProxyPassReverse /app/kibana http://kibana:5601/app/kibana

    ProxyPass /app/timelion http://kibana:5601/app/timelion
    ProxyPassReverse /app/timelion http://kibana:5601/app/timelion

    ProxyPass /bundles http://kibana:5601/bundles
    ProxyPassReverse /bundles http://kibana:5601/bundles

    ProxyPass /elasticsearch http://kibana:5601/elasticsearch
    ProxyPassReverse /elasticsearch http://kibana:5601/elasticsearch

    ProxyPass /status http://kibana:5601/status
    ProxyPassReverse /status http://kibana:/status

    ProxyPass /api/status http://kibana:5601/api/status
    ProxyPassReverse /api/status http://kibana:5601/api/status

    ProxyPass /api/console http://kibana:5601/api/console
    ProxyPassReverse /api/console http://kibana:5601/api/console

    ProxyPass /api/timelion/run http://kibana:5601/api/timelion/run
    ProxyPassReverse /api/timelion/run http://kibana:5601/api/timelion/run

    ProxyPass /api/timelion/functions http://kibana:5601/api/timelion/functions
    ProxyPassReverse /api/timelion/functions http://kibana:5601/api/timelion/functions

    ProxyPass /api/ http://kibana:5601/api/
    ProxyPassReverse /api/ http://kibana:5601/api/

    ProxyPass /goto/ http://kibana:5601/goto/
    ProxyPassReverse /goto/ http://kibana:5601/goto/

    ProxyPass /shorten http://kibana:5601/shorten
    ProxyPassReverse /shorten http://kibana:5601/shorten

    ProxyPass /plugins/kibana/ http://kibana:5601/plugins/kibana/
    ProxyPassReverse /plugins/kibana/ http://kibana:5601/plugins/kibana/

    ProxyPass /plugins/timelion/ http://kibana:5601/plugins/timelion/
    ProxyPassReverse /plugins/timelion/ http://kibana:5601/plugins/timelion/

    ProxyPass /app/sense http://kibana:5601/app/sense
    ProxyPassReverse /app/sense http://kibana:5601/app/sense

    ProxyPass /ui/fonts/open_sans/ http://kibana:5601/ui/fonts/open_sans/
    ProxyPassReverse /ui/fonts/open_sans/ http://kibana:5601/ui/fonts/open_sans/

    ProxyPass /es_admin/ http://kibana:5601/es_admin/
    ProxyPassReverse /es_admin/ http://kibana:5601/es_admin/

    ErrorLog "logs/kibana-error.log"

</VirtualHost>

Кибана 4 была меньше половины этого :)

person Sergiu Indrie    schedule 20.03.2017
comment
Предложил немного улучшенный ответ ниже. Для меня это не сработало бы без правила прокси / plugins. Спасибо! гдж - person hjohanns; 21.12.2018

На Kibana 6.5.4 немного другая версия ответа Серджиу Индри (которую я благодарю за ответ). Для меня это не сработало бы без части плагинов.

    ProxyRequests On

    ProxyPass /KIB/app/kibana http://127.0.0.1:5601/app/kibana
    ProxyPassReverse /KIB/app/kibana http://127.0.0.1:5601/app/kibana

    ProxyPass /KIB/app/timelion http://127.0.0.1:5601/app/timelion
    ProxyPassReverse /KIB/app/timelion http://127.0.0.1:5601/app/timelion
    ProxyPass /KIB/bundles http://127.0.0.1:5601/bundles
    ProxyPassReverse /KIB/bundles http://127.0.0.1:5601/bundles
    ProxyPass /KIB/plugins http://127.0.0.1:5601/plugins
    ProxyPassReverse /KIB/plugins http://127.0.0.1:5601/plugins
    ProxyPass /KIB/elasticsearch http://127.0.0.1:5601/elasticsearch
    ProxyPassReverse /KIB/elasticsearch http://127.0.0.1:5601/elasticsearch
    ProxyPass /KIB/status http://127.0.0.1:5601/status
    ProxyPassReverse /KIB/status http://127.0.0.1:5601/status
    ProxyPass /KIB/api http://127.0.0.1:5601/api
    ProxyPassReverse /KIB/api http://127.0.0.1:5601/api
    ProxyPass /KIB/goto http://127.0.0.1:5601/goto
    ProxyPassReverse /KIB/goto http://127.0.0.1:5601/goto
    ProxyPass /KIB/shorten http://127.0.0.1:5601/shorten
    ProxyPassReverse /KIB/shorten http://127.0.0.1:5601/shorten

    <Directory /KIB/app/kibana/>
        Require all granted
    </Directory>
person hjohanns    schedule 21.12.2018

Я использую эту более компактную конфигурацию виртуального хоста на Apache / 2.4.10:

<Location "/">
    Require all granted

    ProxyPass "http://127.0.0.1:5601/" keepalive=On
    ProxyPassReverse "http://127.0.0.1:5601/"
    #LogLevel alert trace5
</Location>
person Genjo    schedule 16.11.2018

nano /etc/apache2/sites-available/kibana-vhost.conf

<VirtualHost *:80>
    Servername xxxx.name.xyz
    ProxyPreserveHost On
    ProxyRequests On
    ProxyPass / http://localhost:5601/
    ProxyPassReverse /(.*) http://localhost:5601/(.*)
</VirtualHost>

Спасибо,

эта работа для меня ...

person Carlos Guzman    schedule 26.01.2019