0
我目前只是在solr文件夾的「example」文件夾中運行「start.jar」。 嘗試使用PHP的pecl solr擴展聯繫solr時,我在擴展安裝的「php_solr_client.c」文件中收到異常。 我使用SOLR 3.1, 相信的配置是正確的。 「主機名」 - 本地主機,端口 - 8983,路徑 - '/ Solr的/'是否需要使用獨立碼頭安裝來使用php pecl solr擴展?
我可以在「HTTP訪問Solr管理://本地主機: 8983/solr/admin /「
我擔心的是我的機器沒有列出8983作爲開放端口。這不奇怪嗎? ? 這是我的連接配置..
<?php
$options = array
(
'hostname' => 'localhost',
'port' => 8983,
'path' => '/solr/'
);
$client = new SolrClient($options);
$doc = new SolrInputDocument();
$doc->addField('id', 334455);
var_dump($doc->toArray());
try{
$pingresponse = $client->ping();
$updateResponse = $client->addDocument($doc);
}
catch(Exception $e){
var_dump($e->getInternalInfo());
}
//print_r($updateResponse->getResponse());
?>
這是輸出我得到。
array (size=3)
'document_boost' => float 0
'field_count' => int 1
'fields' =>
array (size=1)
0 =>
object(SolrDocumentField)[3]
public 'name' => string 'id' (length=2)
public 'boost' => float 0
public 'values' =>
array (size=1)
...
(!) Warning: SolrClient::ping(): in /var/www/html/simple/new.php on line 16
Call Stack
# Time Memory Function Location
1 0.0003 234560 {main}() ../new.php:0
2 0.0005 239096 SolrClient->ping() ../new.php:16
array (size=3)
'sourceline' => int 1704
'sourcefile' => string '/builddir/build/BUILD/php-pecl-solr-1.0.2/solr-1.0.2/php_solr_client.c' (length=70)
'zif_name' => string 'zim_SolrClient_ping' (length=19)
如果我可以在「http:// localhost:8983/solr /」訪問solr「歡迎頁面」,那麼我的'路徑'和'主機名'應該是什麼?我需要定義陣列中所有必需的參數..? – sharky
請[閱讀關於URI中的組件](http://en.wikipedia.org/wiki/URI_scheme),然後你就會明白'http:// localhost:8983/solr /'的各個部分被調用了。這是您應該擁有的基本互聯網知識。 – Charles
我知道這一點,我很困惑的是,我必須將擴展指向solr的主目錄。 ? 事情根據此配置,但它不工作。 – sharky