我正在使用searchkick gem(https://github.com/ankane/searchkick),(它使用elasticsearch)在我的rails应用程序中执行搜索操作。
我在代理服务器后面。
rake searchkick:reindex CLASS=ClassName
由于代理而引发HTTP 403错误。
有谁知道如何为searchkick设置代理设置
编辑:
我认为问题是searchkick使用我的环境代理设置连接到本地主机。
有没有一种方法可以指定searchkick绕过本地地址的代理而不删除我的所有系统代理设置?
最佳答案
问题是请求被重定向到代理,在这种情况下是错误的。您必须添加两个环境变量来禁用本地主机请求的代理:
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
关于ruby-on-rails - searchkick代理设置ruby on rails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33080344/