首先,检查配置文件/es-home/config/elasticsearch.yml是否做了如下配置:
#代码含义应该是允许跨域访问
http.cors.enabled: true
http.cors.allow-origin: "*"
再检查/es-head-home/Gruntfiles.js中第93行是否添加了:
hostname: '0.0.0.0',
注意:ES配置文件语法检查非(bian)常(tai)严格,尤其注意分号后面都会有一个空格
网上大多数的检查都会到这里为止,但是我在碰到这个问题的时候自己检查了好几遍,配置文件都没错,但是就是未连接,这时,我看到了一个帖子:blog.csdn.net/fst43806068… 这位大哥虽然最后的结果和其他人一样,但是写出了他的思考过程,也就是去分析请求,我仔细一看,我的全是这样:
这个请求估计是获取什么状态的,但是我的请求为什么是localhost呢?我用他的方式请求了这个地址:http://192.168.0.11:9200/_cluster/state 发现没有报错,一看他连接按钮的地址栏中,请求的是他的ip,而我的是localhost,尝试改为我的ip后,绿了!集群健康值正常
结论:
- 不知道是不是还有什么配置可以配置这个输入框的默认地址的,我没有配置好,哪位大神知道的也可以给我指导一下
- 遇到问题还是要冷静分析,多思考
- 最后,我这个解决方案对你有帮助的话,点个赞吧,(才入ES,大家一起学习进步吧)