增强typecho的搜索功能

科学空间是使用typecho程序搭建的博客,侧边栏提供了搜索功能,然而typecho内置搜索功能仅仅是基于字符串的全匹配查找,因此导致很多合理的查询都没法得到结果,比如“2018天象”、“新词算法”都没法给出结果,原因就是文章中都不包含这些字符串。 于是就萌生了加强搜索功能的想法,之前也有读者建议过这个事情。这两天搜索了一下,本来计划用Python下的Whoosh库来建立一个全文检索引擎,但感觉整

- 阅读全文 -

typecho服务器环境设置

WEB服务器 Godaddy虚拟主机上的No input file specified错误 这个问题目前多发现于godaddy的虚拟主机上,而它的配置也是我见过最奇怪的虚拟主机之一。首先出现以上错误的原因是php没有识别出pathinfo导致的,因为godaddy使用的是cgi模式(估计是为了同时兼容php4和php5)来运行php,所以会出现一些奇怪的问题。 解决方法 在根目录下找到php5.i

- 阅读全文 -

使Typecho支持最流行的Emoji表情

Emoji表情随着IOS的普及和微信的支持越来越常见,比如这些比较常见的表情:⭐️ ? ✨ ⚡️ ? ?。所谓Emoji就是一种在Unicode位于\u1F601-\u1F64F区段的字符。这个显然超过了目前常用的UTF-8字符集的编码范围\u0000-\uFFFF。在 MySQL 中,UTF-8只支持最多 3 个字节,而 emoji 是 4 个字节。 Typecho默认不支持emoji表情,其实

- 阅读全文 -

[性能优化系列] 03. 文件缓存

前文介绍了通过gzip减少流量传输,通过设置Cache-Control减少静态资源的请求,本文继续探讨,如何通过缓存的方式,减少对数据库的压力,从而提升页面响应时间。 动态页面性能损耗分析: 以Typecho为例(大部分的cms类站点都是类似的架构),用户的http请求,从index.php进入web服务,然后PHP代码加载各种组件,接着路由到具体的action或者controller,并在co

- 阅读全文 -

[性能优化系列] 02. HTTP缓存控制

上文gzip的使用介绍了通过gzip方式减少http请求过程中的流量传输,减少流量的另一个有效方式就是缓存静态资源,譬如css/js/png/jpg等。但对于静态资源或者不常变动的资源,可以通过尽量利用浏览器或者中间网络设备的缓存功能,减少用户的资源请求量,从而提升用户端的页面响应性能。 HTTP缓存的基本概念 Http的Cache-Control指定了请求和响应遵循的缓存机制。好的缓存机制可以减

- 阅读全文 -

[性能优化系列] 01. gzip的使用

优化网站响应速度的第一件事就应该想到开启流量压缩,这是最简单,成本最低且非常有效果的手段。假如你的网站有大量静态资源(css、js等),或者大量静态页面, 那么开启gzip,效果将会非常明显。 Nginx的gzip配置 本文继续以nginx为例,apache原理类似,但具体配置请自行google。本文假设测试网址是www.typechodev.com,安装的测试程序是typecho1.0正式版,启

- 阅读全文 -

Typecho只能打开主页,文章页打不开

运行环境: nginx+linux 问题描述: 网站可正常打开,文章列表标题,描述正常,无法打开文章页 问题原因: PHP不支持pathinfo Typecho官方解决方案,会复现: http://docs.typecho.org/servers 最终解决方法: 将Nginx的PHP段改成如下形式,就可以访问文章页了 location ~ .*\.php(\/.*)*$ { roo

- 阅读全文 -