如何在 MovableType 子站点启用干净搜索
多站台功能一直是 MovableType 的卖点,但实际使用中子站点在进行搜索和评论操作中会暴露 MT 后台的地址,无伤大雅但我们可以改进一下。
针对搜索功能,改进的方法包括:
- 不使用搜索,使用清晰的分类和完整的存档页面(小站点完全可以)。
- 人为弱化搜索结果页的设计感,尽量减少被访客加入收藏夹的机会。
- 使用第三方搜索引擎,对后台没有负担,但如果站点没有收录或者收录较少时效果就很差了。
在 MovableType 启用干净搜索的方法,在子站点的 Nginx 的 Rewrite 处加入:
location /search {
proxy_pass http://127.0.0.1:5000;
rewrite ^/search/(.*)$ /cgi-bin/mt/mt-search.cgi?search=$1&IncludeBlogs=22&limit=20 break;
}
Blogs=22 替换成 MT 子站点的ID,再修改一下 Search Widget 里的代码,使之匹配 /search/ 就可以了。
rewrite 很简单,但 proxy_pass 的引入可以很方便地令地址栏保持一致,再次感叹一下 PSGI 模式运行 的便利性。