首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >kibana server.basePath结果为404

kibana server.basePath结果为404
EN

Stack Overflow用户
提问于 2016-03-29 00:46:29
回答 2查看 10.7K关注 0票数 6

我在RHEL 7.2上运行kibana 4.4.1

当kibana.yml文件不包含设置server.basePath时,一切正常。Kibana成功启动并发出消息

代码语言:javascript
复制
[info][listening] Server running at http://x.x.x.x:5601/

curl http://x.x.x.x:5601/app/kibana返回预期的超文本标记语言。

但是,当basePath设置为server.basePath: "/kibana4"时,http://x.x.x.x:5601/kibana4/app/kibana将生成404。为什么?

服务器使用相同的日志成功启动

代码语言:javascript
复制
[info][listening] Server running at http://x.x.x.x:5601/

curl http://x.x.x.x:5601/返回

代码语言:javascript
复制
<script>
  var hashRoute = '/kibana4/app/kibana';
  var defaultRoute = '/kibana4/app/kibana';
  ...
</script>

curl http://x.x.x.x:5601/kibana4/app/kibana返回{"statusCode":404,"error":"Not Found"}

为什么'/kibana4/app/kibana‘返回404?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-29 22:42:19

server.basePath的行为与我预期的不同。

我原以为server.basePath会对称地影响网址。这意味着请求URL将在子域/kibana4下,而响应URL也将在子域/kibana4下。

事实并非如此。server.basePath对网址的影响是不对称的。这意味着所有请求URL保持不变,但响应URL已包含subdomin。例如,仍然可以在http://x.x.x.x:5601/app/kibana访问kibana主页,但是所有的hrefs URL都包含子域/kibana4。

仅当您使用在将请求转发到kibana之前删除子域的代理时,server.basePath才有效

下面是我使用的HAProxy配置

代码语言:javascript
复制
frontend main *:80
   acl url_kibana   path_beg   -i /kibana4
   use_backend kibana   if url_kibana

backend kibana
   mode http
   reqrep ^([^\ ]*)\ /kibana4[/]?(.*) \1\ /\2\
   server x.x.x.x:5601

重要的一点是reqrep表达式,它在将请求转发到kibana之前将子域/kibana4从URL中删除。

票数 11
EN

Stack Overflow用户

发布于 2021-06-25 18:51:00

另外,在更改server.basePath之后,您可能需要修改nginx conf来重写请求,否则将无法工作。下面是一个适合我的

代码语言:javascript
复制
        location /kibana/ {
            proxy_pass http://<kibana IP>:5601/; # Ensure the trailing slash is in place!
            proxy_buffering off;
            #proxy_http_version 1.1;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection $http_connection;
            #access_log off;
        }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36266776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档