hexo 文件索引图标在哪里文件在哪里

这是 Elasticsearch 总结系列的最后一篇,以本博客为例介绍一个 Elasticsearch 的使用实例,系列文章见:

以本博客为例,介绍下索引的定义和查询语句,效果参见。

主要考虑了如下几个点:

  • 总共就几百篇文章,所以只用了一个 shard 来存储,没有配置 replica shard,因为重建索引的代价很低。
  • 使用了 提供的 char_filter,在分词前把繁体转换成简体。
  • 使用了 插件提供的两个 tokenizer 来分词,为实现同义词匹配,要自定义 analyzer。
  • 分词后使用了一系列的 filter,注意 filter 的顺序。其中 的配置文件每行一个词。兼容 solr 和 wordnet 的同义词格式。里有现成的同义词库,可供参考,因为 filter 在 tonkenizer 之后执行,所以同义词必须要先在词库里。需要注意的是,这里给 title 和 conent 专门保留了一个没有使用同义词 filter 的,用于提高原始词的评分。
  • 保存了许多字段,但目前查询的时候只用到了 title 和 content,都是进行全文检索,建索引的时候使用 my_ik_max_word 对 Field 做最细粒度的分词,检索的时候使用 my_ik_smart 对关键词做最粗粒度的分词。

  • 因为建索引的时候禁用了 content 的 norms,这里需要提高下 title 的权重。

Elasticsearch 默认没有任何的登陆验证功能,不过可以购买他们家的 插件来提供基于角色的认证功能,免费试用了下,挺不错的,不过买不起呢。

这里采用的安全策略是将 Elasticsearch 服务监听本地端口,然后使用 nginx 做反向代理,但只开放 OPIONS (方便) 和 GET 方法,至于建索引和其他 Elasticsearch 管理接口,都在服务器本地执行。

这里参考了一篇很给力的,使用 nginx 自带的 HTTP Basic Auth 来验证搜索请求。

nginx 具体配置如下:

然后用 base64 编码你的用户名和密码:

为了方便建立索引,编写了几个辅助脚本,代码在 上。

  • elasticsearch-index.py 脚本每次更新索引之后,都会把更新时间(东八区)记录下来(默认是.es-last-index-time),下一次更新的时候,只会更新 page.updated 大于上次索引更新时间的文章。如果要重建索引,直接删除这个文件即可。

当你看到你用的主题出现在两个以上的博客的时候,那你就要考虑自己写一个了。本文的主角是 Hexo ,如果你没有用过,那可以考虑 了,如果你还没有写博客,那你真的。根据,技术人员早晚会选择 Github Pages 类似的服务,而 Hexo 绝对是值得尝试的。

写这篇文章的目的,当然是希望帮你快速的制作一款主题,将要包含的内容如下:

写这篇文章的原因,就是因为制作了一个主题 (、),大家可以先看看,下面的代码,大都来自于这个主题。

也是可以的,只不过可能效率会低一点,在本文中,选择使用如下两个:

  • Stylus:,选择它,纯粹是因为想熟悉一下新技术
  • Swig:,这个项目的作者已经半放弃了该项目,你也可以考虑使用 Jade ,两个功能差距不大,选择这个的原因同上

这篇文章将不介绍它们的使用,请参考它们的文档。

如果你已经看到了这篇文章,基本上你已经是一个 Hexo 用户了,但还是简单的介绍一下 Hexo 的流程:

  • 使用 hexo init 来生成基本文件,做一些基本的配置,像安装模块、配置主题等
  • 使用 hexo g 生成文件,Hexo 会根据主题中的模板,来生成对应的 html 文件,转译 CSS 文件,复制其它的静态文件(如图片图标字体等),组织为一个静态网站
  • 使用 hexo d 来部署,一般是借助一些完成

主题的作用就是在 Hexo 生成文件的时候,提供对应的模板和资源。

Hexo 对主题的基本要求,是需要有如下几个页面:

  • 标签文章列表页 tag

以上这些文件,是 Hexo 在生成 HTML 文件时要用到的,全部放在主题的layout文件夹中。由于上面这些页面里,有很多代码是重复的,比如,HTML文件的 head 部分,页面的顶部导航,底部版权部分等,为了修改方便,组织简洁,一般会将可重用的部分提出来,再利用模板引擎来引入。

其实主题制作,主要是各种细节,按你想要的样子去实现吧。

我要回帖

更多关于 文件索引图标在哪里 的文章

 

随机推荐