本人qq群也有许多的技术文档,希望可以为你提供一些帮助(非技术的勿加)。

QQ群:   281442983 (点击链接加入群:http://jq.qq.com/?_wv=1027&k=29LoD19

安装php-solr扩展

1.下载安装:
libxml2 2.6.31或以上版本
libcurl 7.18.0 或以上版本
到php官网下载solr:http://pecl.php.net/package/solr
然后:
/usr/local/php5/bin/phpize
./configure --with-php-config=/usr/local/php5/bin/php-config
sudo make
sudo make test
sudo make install
 

安装完后会有类似这样的提示:

Installing shared extensions:         /usr/local/lib/php/extensions/no-debug-non-zts-20090626/

把这个记住,然后修改php.ini(vim /usr/local/etc/php.ini ),把

extension_dir = "./"

修改为

extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/"

 
并添加一行

extension=solr.so

注意:/usr/local/php5/bin/phpize 可能会出现变化,具体根据php的安装位置而定。
 
 

2.         建立自定义索引模式

a)         打开E:\solr\conf\schema.xml 文件 找到
<fields>
……
<fields>
替换为
<fields>

1.         <field name="id" type="string" indexed="true" stored="true" required="true" />

2.         <field name="name" type=" string " indexed="true" stored="true" required="true" />

3.         <field name="address" type="text" indexed="true" stored="true" multiValued="true" required="true" />

</fields>

<defaultSearchField>text</defaultSearchField>
替换为
<defaultSearchField>name</defaultSearchField>

删除所有< copyField …> 项

3.         建立PHP客户端
在wamp的www目录下建立solr目录。
将SolrPhpClient.zip解压,并将其中的Apache目录拷贝到www/solr目录下。

创建index.php文件,内容如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-CN" lang="zh-CN">

<head>

<meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/>

<title></title>

</head>

<body>

<?php

require_once( 'Apache/Solr/Service.php' );

// 连接solr服务器

$solr = new Apache_Solr_Service( '127.0.0.1', '8080', '/solr' );

//测试是否联通

if ( ! $solr->ping() ) {

echo 'Solr service not responding.';

exit;

}

//

// 创建两条记录nuby 和 zhangyan

//

$parts = array(

'nuby' => array(

'id' => 1,

'name' => '张岩',

'address' => array( '天安门', '北京天安门' ),

),

'zhangyan' => array(

'partno' => 2,

'name' => '张岩',

'model' => '北京五道口',

)

);

$documents = array();

foreach ( $parts as $item => $fields ) {

$part = new Apache_Solr_Document();

foreach ( $fields as $key => $value ) {

if ( is_array( $value ) ) {

foreach ( $value as $datum ) {

$part->setMultiValue( $key, $datum );

}

}

else {

$part->$key = $value;

}

}

$documents[] = $part;

}

//

// 创建索引

//

try {

$solr->addDocuments( $documents );

$solr->commit();

$solr->optimize();

}

catch ( Exception $e ) {

echo $e->getMessage();

}

//

// 查询

//

$offset = 0;

$limit = 10;

$queries = array(

'id: 1 OR id: 2',

'name: 张岩',

'name: 天安门'

);

foreach ( $queries as $query ) {

$response = $solr->search( $query, $offset, $limit );

if ( $response->getHttpStatus() == 200 ) {

if ( $response->response->numFound > 0 ) {

foreach ( $response->response->docs as $doc ) {

echo "$doc->partno $doc->name <br />";

}

echo '<br />';

}

}

else {

echo $response->getHttpStatusMessage();

}

}

?>

</body>

</html>

本人qq群也有许多的技术文档,希望可以为你提供一些帮助(非技术的勿加)。

QQ群:   281442983 (点击链接加入群:http://jq.qq.com/?_wv=1027&k=29LoD19

安装php-solr扩展的更多相关文章

  1. php solr 扩展

    安装php的solr扩展 下载地址: http://pecl.php.net/get/solr windows下载地址: http://downloads.php.net/pierre/php_sol ...

  2. Linux下安装使用Solr

    Linux下安装使用Solr 1.首先下载Solr.mmseg4j分词包.tomcat并解压,这用google.百度都可以搜索得到下载地址. 2.因为要使用到中文分词,所以要设置编码,进入tomcat ...

  3. PHP5不重新编译,如何安装自带的未安装过的扩展,如soap扩展?

    在虚拟机的CentOS5.5中,一键安装了PHP运行环境,但发现并没有 soap 扩展,而近期项目用需要用到 webservice. 上述的一键安装(lamp0.4),其实是源码编译安装,PHP配置文 ...

  4. Windows下MongoDB安装与PHP扩展

    MongoDB是什么就不再累述了,下面只写MongoDB安装与PHP扩展的方法. 一,安装准备 MongoDB 如果网速慢,可以到MongoDB中文社区的百度网盘下载,密码3gun.(根据你的操作系统 ...

  5. LNMP笔记:安装 Xcache 缓存扩展,降低服务器负载

    LNMP笔记:安装 Xcache 缓存扩展,降低服务器负载 2014/11/27 教程笔记 4,743 14     WordPress 精品主机推荐:恒创主机 | 阿里云(本站目前所用云主机) 倡萌 ...

  6. Ubuntu14下LAMP环境的安装以及yaf扩展的安装

    前段时间在ubuntu下安装了lamp环境,记录一下安装过程方便以后查阅. 安装lamp环境 ① 安装apache sudo apt-get install apache2 系统会弹出如图所示的提示, ...

  7. Linux下安装Redis php-redis扩展 redis重启shell脚本 超详细!

    前言 前面刚写过nosql其中三款热门产品的对比,这次主要写关于Redis的一些事情,Redis的介绍.安装以及扩展(php-redis,因为我是phper)安装等等.同时是写给我的朋友(cccjjj ...

  8. Julia安装以及使用扩展包package(ERROR: UndefVarError: Pkg not defined)

    刚刚安装好Julia1.0,想进行第一步尝试: Pkg.add("PyPlot") 却出现错误:ERROR: UndefVarError: Pkg not defined 问题描述 ...

  9. linux下部署monogoDB服务(以及安装php mogodb扩展)

    这两天网站转移到新的服务器后,登录时出现一个问题,会等待几分钟服务器才响应. 开始以为是nginx服务器的问题,后面经过排查发现是php一个登陆验证的函数的问题,每次跑到这个函数就会迟钝几分钟. 经过 ...

  10. PHP7 学习笔记(三)关于PHP7如何安装调试工具Xdebug扩展以及Zephir的问题

    前言: 1.自己摸索安装 2.快速安装 安装这个扩展是由于Zephir 编译不能始终通过,迫不得已啊,使用Zephir写扩展,总是出现以下错误: www@ubuntu1:~/phalcon-zephi ...

随机推荐

  1. leetcode-mid-design-380. Insert Delete GetRandom O(1)

    mycode import random class RandomizedSet(object): def __init__(self): """ Initialize ...

  2. leetcode 102.Binary Tree Level Order Traversal 二叉树的层次遍历

    基础为用队列实现二叉树的层序遍历,本题变体是分别存储某一层的元素,那么只要知道,每一层的元素都是上一层的子元素,那么只要在while循环里面加个for循环,将当前队列的值(即本层元素)全部访问后再执行 ...

  3. vue的组件通讯 父传子 -- 子传父-- 兄弟组件的传值 vue的组件传值

    首先文字简单撸一下 父子传子   -------首先在父组件上绑定一个属性,在子组件里用props接收,可以是数组或者是对象 子传父   ------在父组件升上自定义一个方法,在子组件里通过this ...

  4. 阶段3 1.Mybatis_03.自定义Mybatis框架_2.自定义Mybatis的分析-创建代理对象的分析

    如何创建代理对象,以及使用设计模式带来的优势 调用的组合关系 不关注的,执行JDBC那一套.第二个是解析XML,解析的技术有很多.

  5. sourceInsight下标题栏显示文件完整路径

    用sourceInsight看代码方便,但是标题栏中不显示文件的完整路径,有时候就会很麻烦,做如下设置即可显示完整的路径 options -> preferences -> Display ...

  6. 不容错过的 MySQL史上最全

    点击下方链接 http://c.biancheng.net/view/2361.html

  7. Redis进阶:Redis的哨兵模式搭建

    Redis进阶:Redis的哨兵模式搭建 哨兵机制介绍 单机版的Redis存在性能瓶颈,Redis通过提高主从复制实现读写分离,提高了了Redis的可用性,另一方便也能实现数据在多个Redis直接的备 ...

  8. Java8---函数式编程-示例

    // Java8函数式编程示例—(Predicate.Stream.Optional) https://blog.csdn.net/weixin_41950473/article/details/84 ...

  9. 2019上海网络赛B题(差分 + 离散化 or 差分 + 思维)

    这题.....队里都没怎么训练差分,导致败北...写了一堆线段树嘤嘤嘤,到最后也是超时,比赛结束后看到了差分的思想于是就去学了一手. 其实了解差分思想的一眼就能看出来是差分了.但是如果对n差分的话很明 ...

  10. Solr安装(单机版)

    本文记录的是solr在win下安装配置使用的过程,最后将solr部署到Linux上通过远程访问.下一篇文章会介绍   solr集群搭建(SolrCloud)    的安装! Solr是基于Lucene ...