原文鏈接:https://blog.csdn.net/qq_31142553/article/details/99689758
在docker安裝了elasticsearch-head:5和elasticsearch:6.3.2之后烤芦,打開界面連接es時(shí)發(fā)現(xiàn)數(shù)據(jù)無法展示拌蜘。
于是網(wǎng)上查了下原因,說是elasticsearch 6增加了請(qǐng)求頭嚴(yán)格校驗(yàn)的原因,并且返回結(jié)果是
{
"error" : "Content-Type header [application/x-www-form-urlencoded] is not supported",
"status" : 406
}
所以我們需要修改一下elasticsearch-head 5的配置文件兰粉。
1、因?yàn)閐ocker容器里面無法使用vi/vim,所以需要先將文件拷貝出來。
命令:docker cp es_head:/usr/src/app/_site/vendor.js ./
說明:將容器里面/usr/src/app/_site/vendor.js文件拷貝到宿主機(jī)的當(dāng)前目錄下纵顾,其中es_head為容器名,也可以寫容器id栋盹。
2施逾、編輯文件
vi vendor.js
共有兩處
1)6886行
contentType: "application/x-www-form-urlencoded
改成
contentType: "application/json;charset=UTF-8"
2)7573行
var inspectData = s.contentType === "application/x-www-form-urlencoded" &&
改成
var inspectData = s.contentType === "application/json;charset=UTF-8" &&
補(bǔ)充說明
vi中顯示行號(hào)的命令為
:set nu
vi中跳轉(zhuǎn)到指定行的命令為
:行號(hào)
3、將改完后的文件拷貝回容器
docker cp vendor.js es_head:/usr/src/app/_site
無需重啟,刷新頁面即可汉额。