我在Debian存储库中安装了elasticsearch和logstash 1.4。它正在处理并从其他设备转发系统日志中收集日志。
我按照了kibana安装指南,但收到错误消息:Connection Failed 检查es是否正在运行或确保http.cors.enabled:true
在控制台中我收到此错误:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://'127.0.0.1':9200/_nodes. This can be fixed by moving the resource to the same domain or enabling CORS.
我已将此添加到我的elasticsearch.yml:
http.cors.allow-origin: "http://192.168.1.1"
http.cors.enabled: true
由于所有3个ELK应用程序都在同一主机上运行,因此IP就是自身的IP。
有什么建议吗?
EDIT :::::
我通过添加标头集来实现它
在启用网站的标记之前Access-Control-Allow-Origin "*"
。
我还必须链接到模块:
ln -s /etc/apache2/mods-available/headers.load /etc/apache2/mods-enabled/
答案 0 :(得分:0)
对于这些配置,你需要sudo或root。
首先,确保elasticsearch.yml中包含以下行(通常位于/etc/elasticsearch/elasticsearch.yml):
http.cors.allow-origin: "http://192.168.1.1"
http.cors.enabled: true
(如果文件的其余部分都被注释掉了,请不要担心 - 默认值应该没问题)
其余的配置是针对Apache的,所以转到apache目录。例如:
cd /etc/apache2
在启用的网站文件夹中,添加"标头设置"选项。在一个简单的系统上,这可能位于/etc/apache2/site-enabled/000-default.conf中指向的文件中。在指令内(可能在设置DocumentRoot的行之后)添加:
Header set Access-Control-Allow-Origin "*"
为此,您还需要启用标头模块。做:
cd /etc/apache2/mods-enabled
ln -s ../mods-available/headers.load
最后,不要忘记重新加载或重新启动Apache服务器(如果您无法停机1秒钟,请重新加载)。例如,在sysvinit风格的系统上:
service apache2 reload
或
service apache2 restart
然后不要忘记在浏览器中刷新页面。