我做了一个网站,名字叫“笑来搜”,主要的功能使可以搜索李笑来老师的作品,包括:
- 学习学习再学习公众号所有文章
- 知笔墨所有书籍,比如《把时间当做朋友》等
- lixiaolai.com 博客中的所有文章
喜欢李笑来老师的可以看看,不喜欢的请忽略看下面的内容。
“笑来搜” 的原型我开源了:
https://github.com/lijinma/laravel-scout-elastic-demo
欢迎 Star ,如果你跑这个 demo 中有任何问题,请提 Issue , 24 小时内回复。
这个开源项目我会做到两点:
- 尽可能写清楚安装中的每一个步骤,我假设你是一名新手。
- 这个 Demo 直接跑在了我的服务器上,你可以直观的玩起来。 http://scout.lijinma.com/search
技术栈解释:
- Laravel Scout: Laravel 框架里面一个组件,可以轻松把 model 和 ElasticSearch 中的 type 绑定在一起, model 的变化会自动同步到 ElasticSearch 中,方便执行搜索。
- ElasticSearch: 开源搜索框架。
- ik 分词: 比较简单好用的中文分词。
如果想看看代码原理,请请查看三篇文章:
一:写一个搜索:使用 Laravel Scout , Elasticsearch , ik 分词
二:写一个搜索:解决搜索结果高亮问题,使用 Laravel Scout , Elasticsearch , ik 分词
三:写一个搜索:自定义词库;使用 Laravel Scout , Elasticsearch , ik 分词
如果你恰巧使用 php ,又想实现一个搜索玩玩,这个 Demo 可能很快让你玩起来。