在更换主题之前本站一直通过 AJAX 配合 Azure Search 来实现站内搜索,后来随着我把主题换成了自制的简陋主题『Coda』,由于懒惰以及不想使用 Javascript 等原因站内搜索也被顺便舍弃。再后来我把网站搬到了 Cloudflare Workers Sites,在感叹 Cloudflare Workers 如此好用的同时,也起了薅羊毛的歹念。这羊毛薅起来也简单,只需要通过 Workers 来处理搜索请求,然后把渲染好的网站返回即可,这样就可以在后端完成渲染从而避免在前端使用 Javascript,正所谓己所不欲……哎不对当我没说。
通过 Cloudflare Workers 处理 Azure Search 请求
为 Hugo 添加 Azure 搜索
Hugo 作为一个静态网站生成器,默认是没有搜索功能的,而如果想要实现搜索功能,首先需要自己生成索引,然后通过集成开源的搜索工具或者使用第三方服务来实现搜索功能。
我这里选择的是使用微软的 Azure Search 来实现,至于选择的原因纯粹是个人爱好,因为事实上我的博客的文章量仅需开源的搜索工具即可处理过来,不过换言之使用 Azure Search 的免费订阅也不会遇到性能瓶颈。