1

我正在使用 searchkick gem ( https://github.com/ankane/searchkick ),(它使用 elasticsearch) 在我的 rails 应用程序中执行搜索操作。

我在代理服务器后面。

rake searchkick:reindex CLASS=ClassName

由于代理,引发 HTTP 403 错误。

有谁知道如何设置 searchkick 的代理设置

编辑:

我认为问题在于 searchkick 正在使用我的环境代理设置连接到本地主机。

有没有办法指定 searchkick 绕过本地地址的代理而不删除我所有的系统代理设置?

4

1 回答 1

0

问题是请求被重定向到代理,在这种情况下是错误的。您必须添加两个环境变量来禁用 localhost 请求的代理:

export no_proxy=0.0.0.0,127.0.0.1,localhost
export NO_PROXY=0.0.0.0,127.0.0.1,localhost

Searchkick 使用curl向 elasticsearch API 发出请求,并且curl从 no_proxy 环境变量中读取代理异常。下次如果您遇到此类问题,请先检查以下步骤:

curl localhost # Observe the response if its coming from proxy try the next step
curl --noproxy "*" localhost # Do not send request to the proxy
echo $no_proxy # Check that you have the right environment variable value
于 2019-06-04T07:27:39.373 回答