Kibana4使用nginx作反向代理

Kibana4相对Kibana3在实现上有很大的不同,在使用nginx做反向代理的时候遇到些问题,把解决方案记录在这里。

我使用的版本是Kibana4.0,首先我们按照如下配置反向代理。

server {
    listen 80;
    server_name kibana.xxx.xxx;


    location / {
        proxy_pass http://10.0.0.12:1234$request_uri;
    }

}

配置好后,reload nginx,访问,结果报如下错误。

Fatal Error
Unable to load "text!config" modules because of an unknown error.
Error: ./config?_b=4673 HTTP status: 403
    at XMLHttpRequest.xhr.onreadystatechange (http://kibana.xxx.xxx/index.js?_b=4673:42712:31)

Uncaught Error: Unable to load "text!config" modules because of an unknown error. (http://kibana.xxx.xxx/index.js?_b=4673:42970)
Error: Uncaught Error: Unable to load "text!config" modules because of an unknown error. (http://kibana.xxx.xxx/index.js?_b=4673:42970)
    at window.onerror (http://kibana.xxx.xxx/index.js?_b=4673:43220:24)

403错误是Forbidden,禁止访问,估计是Kibana在做安全检查。去google了一通,在github上看到了这个Issue,配置改为如下即可成功反向代理了。

server {
    listen 80;
    server_name kibana.xxx.xxx;


    location / {
        proxy_pass http://10.0.0.12:1234$request_uri;
        proxy_set_header Host $http_host;
    }

}

标签: elasticsearch, kibana

添加新评论