nginx 在同一台主机上提供 Elasticsearch 和 Kibana

koo*_*opa 1 nginx reverse-proxy elasticsearch kibana

对 nginx 完全陌生,我需要一个 conf 文件来使 nginx 充当反向代理,以在同一主机上向具有不同 url 路径的 elasticsearch 和 kibana 提供请求。我的意思是,我想要:

localhost/es -> localhost:9200
localhost/kibana -> localhost:5601
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到?

谢谢

koo*_*opa 6

所以,完整的答案是:

server {
    listen 80;
    server_name $hostname localhost;

    auth_basic "Restricted";
    auth_basic_user_file pathtofile;

    location /kibana {
        rewrite ^/kibana/(.*)$ /$1 break;
        proxy_pass http://localhost:5601/;
    }
    location ~ ^/es(.*) {
        rewrite /es/(.*) /$1  break;
        proxy_pass http://localhost:9200;
    }   
}
Run Code Online (Sandbox Code Playgroud)

仍然,我不知道为什么,但是 Kibana 第一个请求的服务速度非常慢(40 秒)。尝试使用 apache httpd,它的速度要快得多。