什么是正确的方法使用PHP cURL进行查询参数和备用端口号的GET请求? (对于SOLR)

时间:2015-11-18 19:36:47

标签: php curl solr

我尝试使用PHP cURL向Apache Solr发送GET请求以接收搜索结果,而且我遇到了一些麻烦。这与PHP cURL有关,我认为这比Solr ...但我离题了......这就是我到目前为止所拥有的。

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://example.com/solr/example/select?".$this->query);
curl_setopt($ch, CURLOPT_PORT, 8983);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_TIMEOUT, '4');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

$data = json_decode(curl_exec($ch), TRUE);

curl_close($ch);

目前,请求在4秒后超时......所以我想知道端口#是否未正确设置...我还尝试将其包含在URL本身中运气。奇怪的是,我可以回显构建的URL,手动添加端口#,复制/粘贴到浏览器中,它的工作原理!但是,由于某种原因,它不适用于上述代码。

任何帮助将不胜感激!提前谢谢!

1 个答案:

答案 0 :(得分:1)

上面的代码实际上是按预期工作的...我的问题是本地防火墙规则阻止了与某些端口#的远程连接(而不是像skrilled怀疑的远程服务器防火墙规则)