0

我想使用 Solr 来使学习管理服务包具有搜索功能。我从这里阅读并试用了官方教程:http: //lucene.apache.org/solr/4_3_0/tutorial.html。在这里:http ://wiki.apache.org/solr/IntegratingSolr

我应该使用什么:SolPHPKoPHP

但是,我想不出如何将 Solr 集成到 PHP 包中。

我必须在包中包含哪些文件以及我需要进行哪些修改才能启用 Solr 索引和搜索?

任何帮助/发布/相关教程都会有所帮助。

4

2 回答 2

0

为了将 php 与 Solr 集成,可以使用日光浴室。Solarium 提供了非常好的构建,并提供了大量用于从 php 使用 Solr 的功能。与 SolPhp 等其他选项相比,日光浴室也维护得很好。

这是一本书,它很好地介绍了集成的工作原理以及如何使用 php 来利用 Solr 的所有功能。

http://www.packtpub.com/apache-solr-php-integration/book

于 2013-12-18T06:46:27.630 回答
0
将日光浴室与 PHP 集成

1.下载并安装php web server(XAMPP)

2.在环境变量中设置PHP路径(C:\xampp\php)

3.下载并安装composer(如果程序崩溃,请更改兼容性)

4.打开文件“C:\xampp\php\php.ini”并取消注释 extension=php_curl.dll 和 extension=php_openssl.dll

5.composer安装成功后(C:\ProgramData\Composer\bin)有composer.phar文件可用或下载composar.phar文件

6.打开命令提示符并转到您的composer.phar文件路径,创建一个文件名composer.json(php composar.phar init)

#
Microsoft Windows [Version 6.2.9200]
(c) 2012 Microsoft Corporation. All rights reserved.
C:\Users\RKJ>cd C:\ProgramData\Composer\bin
C:\ProgramData\Composer\bin>php composer.phar init
Welcome to the Composer config generator
This command will guide you through creating your composer.json config.
 Package name (<vendor>/<name>) [RKJ/bin]: a/b
 Description []:
Author:
Minenter code hereimum Stability []:
License []:
Define your dependencies.
Would you like to define your dependencies (require) interactively [yes]? no
Would you like to define your dev dependencies (require-dev) interactively [yes]
? no
{
    "name": "a/b",
   "require": {
 }
 }
Do you confirm generation [yes]? yes

然后编辑您的 composer.json 文件并将 require feild 更新为 "solarium/solarium": "3.0.0"

或将文件另存为 composer.json { "name": "rkj/abc", "require": { "solarium/solarium": "3.0.0" } }

7.type >>php composer.phar 安装供应商文件夹将在您的路径中可用

8.将 vandor 文件夹复制到您的 php 工作区(C:\xampp\htdocs)并使用以下脚本进行检查

<?php
$config = array(
'endpoint' => array(
    'localhost' => array(
        'host' => 'localhost', 'port' => '8080', 'path' => '/solr/collection1/select? 
    q=*%3A*&wt=json&indent=true'
      )
    )
 );

// new Solarium Client object
include(__DIR__ . '/vendor/autoload.php');
$client = new Solarium\Client($config);
print('helllo<br>');
$ping = $client->createPing();

// execute the ping query
try{
$result = $client->ping($ping);
echo 'Ping query successful';
echo '<br/><pre>';
var_dump($result->getData());
}catch(Solarium\Exception $e){
echo 'Ping query failed';
}
?>
于 2013-08-08T14:00:06.683 回答