您的位置:首页 > 编程语言 > PHP开发

windows下elasticSearch以及elasticSearch-php安装及使用

2016-04-15 14:38 766 查看
上一篇文章在centos 6.5折腾了一下,基本上熟悉了elasticSearch,下面准备在本地开发环境windows 7下装一遍。

第一步:elasticSearch 2.3.1在window 7安装

下载地址:https://www.elastic.co/downloads/past-releases

里面有各个版本的,记住是不带hadoop的

下面这种命名的

Elasticsearch 2.3.1

解压, 然后运行,进入解压目录,elasticsearch.bat就运行起来了



很是简单吧,在浏览器中输入:http://localhost:9200/

这样说明安装成功了,

elasticsearch插件elasticsearch-head安装:

在cmd命令行中进入安装目录,再进入 bin目录,运行以下命令:

plugin install mobz/elasticsearch-head




然后浏览器http://localhost:9200/_plugin/head/ 就可以了 很简单



参考文章:/article/4835657.html

第二步:elasticsearch-php安装使用

要使用elasticsearch-php有如下三个要求:

1.PHP的版本在5.3.9以上,我用的是wamp php 5.5.12

2.在项目中使用Composor来管理包,下载地址如下:http://www.phpcomposer.com/

3.在php.ini中开启curl和openssl 我的wamp集成环境,都已经开了

要使用elasticsearch,需要JDK的版本大于6,最好选择8吧,我的最新版

1.新建一个文件夹取名为native,此为项目随便建文件夹 我的是放在E:\wamp\www\native 里面 虚拟主机呗

2.在里面放入一个命名为composer.json的文件,文件内容为:

{
"require":{
"elasticsearch/elasticsearch" : "~2.0"
}
}

3.将composer.phar拷贝到native文件夹中,cd 到test文件夹,输入命令:php composer.phar install --no-dev 等待安装成功 【composer安装之后,有composer.phar,你可以全局搜下一下,然后拷贝一份,放在native里面】

composer 因为国内很慢,具体参考http://pkg.phpcomposer.com/

修改 composer 的全局配置文件(推荐方式)

打开命令行窗口(windows用户)或控制台(Linux、Mac 用户)并执行如下命令:

composer config -g repo.packagist composer https://packagist.phpcomposer.com


这个时候native文件夹下面应该会出现vendor文件夹,里面有elasticsearch、composer、guzzle等文件夹,很多内容

4.这个时候,就可以使用elasticsearch进行建立索引和进行检索了

官方扩展 https://github.com/elastic/elasticsearch-php
官方扩展说明文档有个问题

<?php
require 'vendor/autoload.php';
$client = ClientBuilder::create()->build();


Fatal error: Class 'ClientBuilder' not found

Fatal error: Class 'ClientBuilder' not found in E:\wamp\www\native\ElasticSearch.php on line4



那么怎么办呢

加上

use Elasticsearch\ClientBuilder;


<?php
require 'vendor/autoload.php';
use Elasticsearch\ClientBuilder;
$client = ClientBuilder::create()->build();
$params = array();
$params['body'] = array(
'testField' => 'dfdsfdsf'
);
$params['index'] = 'my_index';
$params['type'] = 'my_index';
$params['id'] = 'w1231313';
$ret = $client->index($params);
print_r($ret);

?>


完美解决,新建一个索引吧



搜一搜,很简单吧


http://localhost:9200/my_index/my_index/_search?pretty&q=*
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: