2015-03-10 22 views

risposta

2

ho riparato dal seguente:

location /kibana4/ { 
proxy_pass http://host:5601/; 
proxy_redirect http://host:5601/ /kibana4/; 
} 

ho dovuto usare proxy_redirect per avere la risposta indietro!

Grazie

+0

Risposta eccellente, buon lavoro :) –

+0

Mi dispiace non lavorare per me – Nijo

15

Questo workd per kibana 4.0.1. e presumo che si esegue Kibana sullo stesso host nginx in ascolto sulla porta 5601.

tuo nginx config dovrebbe essere simile:

server { 
    listen    *:80 ; 

    server_name   server; 
    access_log   /var/log/nginx/kibana.srv-log-dev.log; 
    error_log   /var/log/nginx/kibana.srv-log-dev.error.log; 

    location/{ 
    root /var/www/kibana; 
    index index.html index.htm; 
    } 

    location ~ ^/kibana4/.* { 
    proxy_pass http://kibana4host:5601; 
    rewrite ^/kibana4/(.*) /$1 break; 
    proxy_set_header Host $host; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    auth_basic "Restricted"; 
    auth_basic_user_file /etc/nginx/conf.d/kibana.myhost.org.htpasswd; 
    } 
} 

Le linee

auth_basic "Restricted"; 
auth_basic_user_file /etc/nginx/conf.d/kibana.myhost.org.htpasswd; 

può essere utilizzato in modo che fornisci un'autenticazione di base al sito.

Il link di accesso sarà http://server/kibana4

+0

Non eseguo kibana e nginx sullo stesso host –

+0

uso 'proxy_pass http: // kibana4host: 5601;' nella configurazione di nginx con l'host che esegue kibana. Ho aggiornato la risposta. – psebos

+0

Ho postato la soluzione qui sopra grazie a tutti –

6

non basta usare posizione perché la sua ricerca di un file vero e proprio dopo l'/

kibana4 non è la posizione base, ma un servizio effettivo

ogni volta che si utilizza proxy_pass è necessario utilizzare a monte decelerazione con esso

ecco una configurazione di lavoro con autenticazione base di HTTP, e terminazione SSL

upstream kibana { 
    server 127.0.0.1:5601 fail_timeout=0; 
} 

server { 
    listen  80; 
    return 301 https://example.com; 
} 

server { 
    listen    *:443 ; 
    ssl on; 
    ssl_certificate /etc/nginx/ssl/all.crt; 
    ssl_certificate_key /etc/nginx/ssl/server.key; 

    server_name   example.com; 
    access_log   /var/log/nginx/kibana.access.log; 

    location/{ 
    auth_basic "Restricted"; 
    auth_basic_user_file /etc/nginx/conf.d/kibana.htpasswd; 
    proxy_pass http://kibana; 
    } 
} 
1

questo ha funzionato per me con Kibana 4.6.1:

location ~ (/app/kibana|/bundles/|/kibana|/status|/plugins) { 
    proxy_pass http://localhost:5601; 
    proxy_http_version 1.1; 
    proxy_set_header Upgrade $http_upgrade; 
    proxy_set_header Connection "upgrade"; 
    proxy_set_header Host $host; 
    rewrite /kibana/(.*)$ /$1 break; 
} 

(da here)

Non una soluzione piuttosto elegante, ma ancora ..

NB: server.basePath in Kibana config deve essere impostato come "/" (o commentato) in questo caso

Problemi correlati