(而且也很多人跟我说过,一直咕咕咕罢了QAQ) 搭建的时候呢我试过两个插件,一个是“本地搜索”,而另外一个就是我现在用的“Algolia”搜索引擎。 搭建 搭建成品图 image.png 介绍 本篇目说的是 Algolia 搜索引擎的搭建。 不可都选) hexo-algolia hexo-algoliasearch 如果你选择了第一个请查阅该作者的Github配置,然后可以酌情结合本博文。 Algolia recommend to use 5000 for best performance. hexo clean && hexo g -d && hexo algolia 此代码,清除缓存,上传,上传搜索引擎直接一步到位啦~ 好了,完了。给我点个赞呗(点锤子)
Hexo主题Next配置algolia站内搜索 Algolia是一家为网站与移动应用提供托管式搜索API的初创企业,成立于2012年,总部位于旧金山,曾参加过去年的YC训练营。 实现的效果如下 search 注册Algolia 打开Algolia进行注册。可直接使用github账号进行注册。 创建index 点击 NEW INDEX创建一个新的index。 5000 打开 主题配置文件,添加algolia配置信息。 # Algolia Search algolia_search: enable: true hits: per_page: 10 labels: input_placeholder , 在Hexo的根目录执行 $ export HEXO_ALGOLIA_INDEXING_KEY=粘贴上一步复制的 API KEY 再次执行 $ hexo clean $ hexo algolia 至此
之前一直无法成功注册登录 algolia 一直用的 hexo 本地搜索,搜索结果不准确,algolia 有一定的免费额度,对于小网站来说还是挺友好的,接入也很方便。 并获取配置 https://www.algolia.com/ 配置 修改博客根目录的配置文件 _config.yml algolia: appId: "Z7A3XW4R2I" apiKey 很大一部分原因就是因为我的账号没法正常登录 Algolia。 一开始我是用 foxmail 邮箱去注册的,但是注册成功之后一直无法登录,我以为是墙的问题,但是后来发现并不是。 (不知道是不是白嫖的人太多了,导致 Algolia 封锁了一些特殊邮箱的行为) 搜索没有内容 当我一开始安装配置完成之后,我发现 Algolia 上面没有上传我的内容,也就无法搜索到。 原因其实很简单,但很容易被忽略: 就是你需要先执行一次 hexo clean 清除一次缓存,然后再进行 hexo algolia hexo g 操作就可以了
Algolia是什么? 如果注意一下 Algolia 的历史,2014 年开始,而 Elastic Search 最早大致从 09 年开始,因此可以看出 Algolia 其实是为了解决 Elastic Search 配置复杂、 只要你不做日志搜索索引量不超过一百万那么几乎可以肯定的是 Algolia 好用得多。algolia和elasticsearch哪个更有潜力? /zvideo/1318577856813973504search配置注册Algolia:https://www.algolia.com/users/sign_up打开Algolia进行注册。 配置vitepress Algolia然后在docs/.vitepress/config.js{ themeConfig: { algolia: { appId
直到最近发现了这货 —— Algolia DocSearch,前后不到 3 小时(包括申请时等待的时间)就弄好了。 了却心头大事后,也惊异于它好用,简直是难得的良心软件。如此幸事,岂能不装一逼? …… Algolia DocSearch 的基本原理和主要优势 相对于其它一些全文搜索方案,Algolia DocSearch 的主要优势在于它是专门针对在线文档搜索这一需求的。 在 Algolia DocSearch 官网 填写自己的文档网站的地址和邮箱进行申请 DocSearch 可以免费使用,而且不用注册,因为他们觉得,任何人都应该能够有能力构建方便搜索的文档(可以说相当有情怀吧 总结 Algolia DocSearch 可以说真如其官网描述的那样,算是目前构建可在线搜索文档的最简单的方式之一了。你只需要关注文档本身,进行少量的配置,其它的 Algolia 全包了。 另外,Algolia 还有一些其它优秀产品及服务,诸位可前往官网自行探索。
algolia.json 的索引文件。 发现 Algolia 官方也提供了个 setup-algolia-cli 项目支持,不过很遗憾在使用过程中,发现导入有问题无法解决只好放弃。 1 2 3 4 algolia version 1.2.0 algolia objects import $ALGOLIA_INDEXNAME -F $ALGOLIA_INDEXFILE bufio.Scanner }} INDEX_NAME: ${{ secrets.ALGOLIA_INDEXNAME }} FILE_PATH: "public/algolia.json" 小结 整个过程中也可谓几番波折 参考: hugo添加Algolia搜索系统 Algolia CLI 使用 GitHub Actions 自动上传搜索记录到 Algolia
获取 Algolia 账号 注册 Algolia。 进入官网地址 注册,也可以直接用Github授权登录。 新建 Index。 安装依赖 && 写入配置 hexo-algoliasearch(推荐) hexo-algolia 安装 Algolia 依赖。 执行hexo algolia。 前往博客根目录,打开cmd命令窗口执行hexo algolia。 hexo algolia 到如下信息,证明成功了,可以去 Algolia 网站上查看,索引已经上传成功了。 export HEXO_ALGOLIA_INDEXING_KEY=your apiKey hexo algolia 到如下信息,证明成功了,可以去 Algolia 网站上查看,索引已经上传成功了。
hexo-algolia、hexo-algoliasearch 构建思路 <1>引入相关插件 <2>注册algolia,创建集合存储信息 <3>配置_config.yml存储algolia相关参数 <4>配置主题配置文件,开启algolia的搜索模式(关闭本地搜索) hexo-algolia 开发说明 <1>安装hexo-algolia,按照文档做相应的配置 npm install hexo-algolia 配置完成,随后执行hexo algolia,执行成功之后查看algolia中相关内容(如果提交失败,则先clean项目) <3>数据推送 上传数据到algolia(当添加了新文章,搜索不到的时候则需要刷新 algolia) hexo clean hexo algolia # 先配置环境变量,否则报如上错误(在gitbase中使用export指令) export HEXO_ALGOLIA_INDEXING_KEY # 随后进入博客项目根目录,清理后重新执行 hexo clean、hexo algolia <4>修改主题配置文件 # Algolia search algolia_search: enable
什么是 Alogolia Algolia 是一个托管搜索引擎,提供全文,数字和多面搜索,能够从第一次击键中提供实时结果,它提供了一组工具,可简化制作完整搜索体验并将其集成到您的网站和应用程序中的过程。 ,我们可以通过调用 Algolia 的API接口把我们自己站点的数据上传到 Algolia 中,实现我们自己站点的搜索功能。 hexo algolia 看到如下信息,就表示上传成功 INFO 360 files generated in 3.97 s INFO Clearing index on Algolia.. INFO Indexing posts on Algolia... INFO 86 posts indexed. 再把 _config.butterfly.yml 的 algolia_search 设置改成 algolia_search: enable: true hits: per_page:
Find “scripts”, and add the following: "algolia": "atomic-algolia" Algolia index output format has already ={{ YOUR_APP_ID }} ALGOLIA_ADMIN_KEY={{ YOUR_ADMIN_KEY }} ALGOLIA_INDEX_NAME={{ YOUR_INDEX_NAME }} ALGOLIA_INDEX_FILE Now you can push your index to Algolia by simply running: $ npm run algolia Add the following variables to your hugo site config so the search page can get access to algolia index data in the cloud: algolia_search = true algolia_appId = {{ YOUR_APP_ID }} algolia_indexName = {{ YOUR_INDEX_NAME }} algolia_apiKey =
* 1.注册Algolia,创建Index * 前往 Algolia[2] 注册页面,注册一个新账户。 接下来需要安装 Hexo Algolia 扩展, 这个扩展的功能是搜集站点的内容并通过 API 发送给 Algolia。 前往站点根目录,执行命令安装: npm install --save hexo-algolia 3.设置key,更新站点配置文件 在 Algolia 服务站点上找到需要使用的一些配置的值,包括 ApplicationID 编辑 站点配置文件,新增以下配置(替换除了 chunkSize 以外的其他字段为在 Algolia 获取到的值): algolia: applicationID: applicationID algolia: true # Algolia Search algolia_search: enable: true hits: per_page: 10 labels:
新版博客用docusaurus重构已经有些日子了,根据docusaurus的文档上也申请了Algolia,想一劳永逸的解决博客的搜索问题。但是流水有意,落花无情。 algolia总是不给我回复,我只能对着algolia的申请页面仰天长叹。 正常情况的申请 按照docusaurus官方文档上说的,当我们需要搜索的时候,打开https://docsearch.algolia.com/apply/填一下申请,提交就行了。 手动上传 首先我们得去Algolia上注册一个账号,然后在这里需要创建一个应用: 应用的旁边,需要创建一个index用来存储搜索数据: 这样,前期的准备工作就做好了。 by Algolia appId: 'YOUR_APP_ID', // Public API key: it is safe to commit it
/update.sh 集成 Algolia 搜索插件 Algolia The Most Reliable Platform for Building Search. 在 hexo 的 _config.yml 文件中,添加 algolia 配置。 (注释记得去掉) algolia: applicationID: 'xxx' apiKey: 'xxx' indexName: 'my-hexo-blog' // 填写在 aloglia 中设置的名称 --save // 使用 npm 安装 hexo-algolia 插件 export HEXO_ALGOLIA_INDEXING_KEY=xxx // xxx 为 apiKey hexo clean hexo algolia // 生成index 为 Next 主题添加阅读次数统计 LeanCloud 采用第三方 LeanCloud 服务实现 Next 主题集成了 LeanCloud 统计。
大家节日快乐,今天早上例行逛 GitHub 时发现一个好东西,来自 Algolia 的开源产品 Places,Algolia 是著名的数据索引服务提供商,Laravel 的文档搜索服务就是基于 Algolia 更多使用方式请自行在官方网站:https://community.algolia.com/places/ 或者 GitHub 主页:https://github.com/algolia/places 大家节日快乐
新版博客用docusaurus重构已经有些日子了,根据docusaurus的文档上也申请了Algolia,想一劳永逸的解决博客的搜索问题。但是流水有意,落花无情。 algolia总是不给我回复,我只能对着algolia的申请页面仰天长叹。 正常情况的申请按照docusaurus官方文档上说的,当我们需要搜索的时候,打开https://docsearch.algolia.com/apply/填一下申请,提交就行了。 手动上传首先我们得去Algolia上注册一个账号,然后在这里需要创建一个应用:应用的旁边,需要创建一个index用来存储搜索数据:这样,前期的准备工作就做好了。 回到网站上看看,已经有数据上传上来了:好了,我们在docusaurus.config.ts中配置一下,看看效果:algolia: { // The application ID provided
:) 二进制和源代码可以在这里找到:https ://gitlab.com/kerkmann/cliliblur lnx 0.9,像 Elasticsearch 和 Algolia 这样的快速搜索引擎已经出来了
顺便,写了个自动识别是否需要hexo algolia的教程,有需要的话自行取用啦!废话不多说,开始教程! 自动执行algolia 功能说明 由于algolia的更新是需要独立执行命令的,并且执行的时候会重新构建,如果每次action构建都需要执行一次,会增加没必要的构建时间,拖慢更新速度,所以写了这样的功能 更新 if: ${{ env.should_run_algolia == 'true' }} run: | echo "执行 Algolia 更新" hexo algolia 具体添加位置为:下载上一次构建的 posts 文件清单到决定是否执行 Algolia放在生成静态文件之前,执行Algolia更新放在构建之后,前半部分会分析是否需要执行命令,并添加一个环境变量告诉后面是否需要执行 更新 if: ${{ env.should_run_algolia == 'true' }} run: | echo "执行 Algolia 更新"
如果第一个命令执行成功,与操作符 ( && )才会执行第二个命令 如果第一个命令执行失败,或操作符 ( || )才会执行第二个命令 # algolia.sh export HEXO_ALGOLIA_INDEXING_KEY =xxx hexo clean hexo algolia 如上文件在 git bash 中执行时为逐行执行,执行完 hexo clean 后(不管从成功还是失败)执行 hexo alglolia hexo clean && hexo algolia 则意味着 hexo clean 执行成功,才会执行 hexo algolia ---- Java MVN 编译 Java : mvn compile (
目前, Scout 自带一个 Algolia 驱动。不过,编写自定义驱动也很简单,你可以轻松的通过自己的搜索实现来扩展 Scout。 不过 是收费的,不过对于个人站来说已经处处有余了 (是对于我这种没有什么流量的人来说) 注册 Algolia 安装 Scout composer require laravel/scout 发布配置文件 algolia/algoliasearch-client-php 配置 编辑 .env 文件 SCOUT_DRIVER=algolia SCOUT_QUEUE=true ALGOLIA_APP_ID= CRTW***** ALGOLIA_SECRET=a1a8a9e***** 其中 ALGOLIA_APP_ID 和 ALGOLIA_SECRET 在 刚才注册的 algolia 里,API Keys 目录中的 Application ID 就是 ALGOLIA_APP_ID, Admin API Key 就是 ALGOLIA_SECRET 配置模型索引 <?
搜索设置 loveit支持两种搜索:lunr和algolia。 中 用travis进行自动化部署 algolia的问题在于每次录入新文章之后都需要更新index.json,实在是太过麻烦,本文选择使用atomic-algolia来自动产生对应的文件。 ALGOLIA_APP_ID=46GYFZ8M81 ALGOLIA_INDEX_NAME=myblog ALGOLIA_INDEX_FILE=public/index.json ALGOLIA_ADMIN_KEY =XXX 如果不想配置自动化部署的话,每次就执行一遍npm run algolia即可 下面配置travis。 --save-dev script: # 运行hugo命令 - hugo # 生成索引命令 - echo "ALGOLIA_ADMIN_KEY=$ALGOLIA_ADMIN_KEY"