phpでsolrを使おうとしています。solrアプリケーションを構成しましたが、正常に動作しています。ただし、phpを使用してsolrと通信することはできません。私はいくつかの拡張機能を試しました:pecl-solr、solr-php-client、Solarium。しかし、誰も私のSolrサーバーにpingを送信することさえできませんでした。私のsolrサーバーがlocalhost:8080/solrで利用可能である間はこれすべてです。私はtomcatを使用してWindowsで実行しています。(phpを介してpingを実行している間、tomcatおよびsolrサービスをチェックしましたが、それらは稼働していました)
私はここで非常に基本的な間違ったことをしていると思います。私のSolrアプリケーションはxamppのhtdocsにある必要がありますか?これは、Tomcatサーバーのwebappsフォルダー内にあるためです。solr-php-clientでpingへのパスを次のように具体的に指定したので、どのように違いが生じるかはわかりません。
require_once( 'Apache/Solr/service.php' );
$solr = new Apache_Solr_Service( 'localhost', '8080', '/solr' );
var_dump($solr) ;
if ( ! $solr->ping() ) {
echo 'Solr service not responding.';
exit;
}
このコードを実行すると、「Solrサービスが応答していません」というメッセージが表示されます。助言がありますか ?
更新:内部を調べたところ、コンテンツを取得するために次のphp関数が使用されていることがわかりました:file_get_contentsファイルがURIを介して配置されている場合、セキュリティのために多くのサーバーがこのコマンドをブロックするため、失敗する可能性があることをさらに知りました懸念 。これはxamppにも当てはまりますか?私のローカルマシンで実行していますか?