当Rails从Amazon Elasticsearch Service访问时,会出现400错误

在尝试在AWS上创建Rails和Elasticsearch环境时,出现了以下错误:

<head><title>400 The plain HTTP request was sent to HTTPS port</title></head>

造成这个现象的原因是…

只是没有正确设置而已。
因为elasticsearch-rails使用elasticsearch-ruby,所以它会按照它的指示进行操作。

在我的环境中加入了端口配置。

Elasticsearch::Model.client = Elasticsearch::Client.new(
    {
        log: true,
        hosts: {
            host: 'xxxxxxxxxxxxxxxxxxxxx.ap-northeast-1.es.amazonaws.com',
            port: '80'
        }
    }
)

如果还有其他ElasticSearch域名不是公共的,而是带有认证的,那么我们还需要添加其他配置。

祝您享受愉快的ES生活 ?

广告
将在 10 秒后关闭
bannerAds