[英]Solr-php-client issue
我正在嘗試運行一個可以使用solr-php-client訪問solr索引的腳本。 該腳本停止在Apache_Solr_Service
類的ping函數內部。
然后我嘗試這樣做:
echo file_get_contents('http://localhost:8983/solr/admin/ping');
一無所有-空白頁。 但是字符串http:// localhost:8983 / solr / admin / ping可以正常工作,因為它應該拋出瀏覽器地址欄。
有人可以對此提出建議嗎?
附加信息:apache 2.2.3,CentOS 5.5,php 5.1.6,Solr 1.4.1
謝謝
簡而言之,只需在您的網址后添加尾隨正斜杠,如下所示:
echo file_get_contents('http://localhost:8983/solr/admin/ping/');
或者只是確保您不在多核模式下運行。 在這種情況下,您需要像這樣的管理員之前指定核心的名稱
echo file_get_contents('http://localhost:8983/solr/CORE_NAME/admin/ping/');
第一種選擇應該為您工作。
還請注意您在何處托管代碼。 它應該在該“ localhost”上,否則將solr列為公共IP並使用php-solr-client訪問該IP。
嘗試
echo file_get_contents('http://127.0.0.1:8983/solr/admin/ping');
好的,嘗試:
<?php
$curl_handle=curl_init();
curl_setopt($curl_handle,CURLOPT_URL,'http://localhost:8983/solr/admin/ping');
curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,1);
$buffer = curl_exec($curl_handle);
curl_close($curl_handle);
echo $buffer;
?>
我找到了解決方案:
semanage port -a -t http_port_t -p tcp 8983
檢查以下內容: http : //wiki.centos.org/HowTos/SELinux-參見5.4。 允許訪問端口部分
謝謝你的幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.