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

    上一篇文章在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/ 就可以了 很简单

  

  参考文章:http://www.cnblogs.com/zhangchenliang/p/4214408.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的文件,文件内容为:

  1. {  
  2.     "require":{  
  3.         "elasticsearch/elasticsearch" : "~2.0"  
  4.     }  
  5. }  

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=*


猜你喜欢

转载自blog.csdn.net/kdchxue/article/details/51161276