如何本地搭建一个搜索引擎?直接套一个开源搜索引擎有哪些?
优采云 发布时间: 2021-08-18 07:09如何本地搭建一个搜索引擎?直接套一个开源搜索引擎有哪些?
文章directory
假设有一堆单词和一堆内容。现在我想知道:
利用上述词与词、词与内容、内容与内容的关联,优化页面的推荐信息,让用户和搜索引擎获得更好的浏览体验。
这些相关信息的推荐可以通过搜索实现。无论推荐信息是硬编码的、实时查询的、还是缓存的,前提是有搜索引擎。
如何在本地构建搜索引擎?
直接设置开源搜索引擎即可
开源搜索引擎有哪些?
这个渣用到了下面两个
相比之下,推荐迅搜。
因为Coreseek很多年没有更新了,我觉得写文档的人可能没把语言学好
迅搜一直在更新,用的人很多。更容易找到问题的解决方案。另外,后端基于C/C++开发。总觉得和C有关的性能更好一些。所以下面十分钟搭建本地搜索引擎教程,以xunsearch为例。
xunsearch官方主页在:
10 分钟构建本地搜索引擎示例安装
这个渣很久以前就装过了,步骤极其简单,按照这里的官方文档就可以了。
启动xunsearch服务
本渣的xunsearch安装在/Users/sunjian/目录下,执行:
/Users/sunjian/xunsearch/bin/xs-ctl.sh start
将/Users/sunjian/替换为对应的xunsearch安装路径,执行后即可启动xunsearch服务
创建项目配置文件
在/xunsearch/asdk/php/app/目录下创建项目配置文件,文件名一般与项目名一致,以.ini结尾
project.name:项目名称
project.default_charset:编码,通常为 utf-8
server.index 和 server.search 是服务端口,直接粘贴即可
[xxx]和type下面是要索引的字段名称和对应的数据类型。
比如我抓了一堆微信公众号数据放到mysql中,如下:
希望能通过关键词搜索这些公众号的title或者body,找到与这个词相关的内容,然后需要在存放title和body的字段上创建索引,以及id字段是每条记录的唯一标识,是mysql中的主键,所以也需要加到索引中。
然后在xunsearch配置文件中,需要写3个字段用来创建索引:id title和contont
字段名写在[]中,对应mysql中的字段名
type 是该字段对应的数据类型。这个数据类型不是mysql中的数据类型,而是xunsearch对应的数据类型。有以下几种:
显然,title data对应的type是title,body text对应的type是body。
ps:配置文件文档:
新索引
ps:索引操作说明文档
测试搜索
ps:搜索测试文档:
在web目录下创建xunsearch前端搜索页面骨架
ps:生成搜索代码文档:
本地开启PHP环境
对于MAC本地,打开/etc/apache2/httpd.conf,这一行将被取消注释
重启 Apache:
sudo apachectl restart
ps:如果您已经在本地开启了PHP环境,请跳过这一步。如果是win系统请百度相应的PHP环境打开方法
浏览器打开本地localhost下生成的xunsearch前端搜索页面。
词的相关内容:
内容相关内容:
================================================ ====