一个不错的php wiki程序

公司内部使用wiki 一般是偏重量点的 confluence 或 mediawiki,但显然个人使用的话,没必要使用这么相对重的产品,个人需的wiki 我感觉满足以下功能即可。

1、支持树型导航;

2、支持markdown语法;

3、支持静态页面生成;

4、可以检索;

5、无需数据库

可选的产品很多:mdwiki、wikitten、gitbook、vimwiki、dokuwiki、tiddlywiki、amWiki 等。对于测试后,发现wikitten不错,基本满足以上功能,不过其检索有点弱,只支持标题检索 。

一、wikitten安装

直接去 wikitten 页面下载代码,解压到相应的数据目录下。在nignx 上进行如下配置即可:

server {
    listen 80;
    server_name wiki.361way.com;
    index index.html index.htm index.php default.html default.htm default.php;
    root /wikitten;
    location ~* ^/static/(css|js|img|fonts)/.+.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt|swf|pdf|txt|bmp|eot|svg|ttf|woff|woff2)$ {
        access_log off;
        expires max;
    }
    location / {
        rewrite ^(.*)$ /index.php last;
    }
    location ~ /index.php$ {
        try_files $uri =404;
        #fastcgi_pass  unix:/tmp/php-cgi.sock;
        fastcgi_pass  127.0.0.1:9001;
        include fastcgi.conf;
    }
}

重新加载nginx服务即可。

二、wikitten配置文件

到站点的根目录下复制config.php.example 为 config.php其中有如下几项:

define('APP_NAME', 'My Wiki'); - 站点标题
define('DEFAULT_FILE', 'index.md'); - 默认主页文件, must be located in library folder
define('LIBRARY', '/path/to/wiki/library'); - 数据文件所在目录
define('ENABLE_EDITING', true); - 是否可以直接查看md源码
define('USE_PAGE_METADATA', true); - Enable the JSON Front Matter (meta data), see below for more details
define('USE_DARK_THEME', true); - 使用黑色主题
define('USE_WIKITTEN_LOGO', false); - 不使用官方logo

上面的信息都比较好理解,其中USE_PAGE_METADATA这项有点特别。这里单独说明下,该选项启用后,并不会在每个页面下有一个tag可点的标签出现,其只是对SEO有益的一个配置。启用后,可以在每个页面开头加上如下内容,如下:

# cat test.md
---
"title": "测试首页",
"tags": ["my", "custom", "tags"],
"description": "测试页描述",
"author": "yangbk"
---

注:上面这部分是以三个小横线包含内容的,建议修改为三个反斜杠,因为有些md 程序里是不识别三个横线这种用法的

这时候查看网页源代码会发现如下内容:

wikitten

三、其他

views、static、plugins这几个目录就不用单独说了吧,看名称就知道啥意思,如果想对程序进行功能扩展、或者修改其显示样式,应该知道从哪里改了吧?由于其默认css调用的bootstrap.min.css 主题,我就参照segmentfault的markdown显示,修改了该文件的部分内容。

wiki之间的对比,可以参考:https://www.v2ex.com

整合Wikitten和MDwiki搭建个人知识库,可以参考:http://www.361way.com/integration-wikitten-mdwiki/5634.html (原页面原于无法打开,从搜索引擎镜像了一份过来)

使用lunr.js为Wiki系统增加全文搜索支持,可以参考:http://www.361way.com/lunrjs-wiki-search/5636.html(原页面原于无法打开,从搜索引擎镜像了一份过来)




本站的发展离不开您的资助,金额随意,欢迎来赏!

You can donate through PayPal.
My paypal id: itybku@139.com
Paypal page: https://www.paypal.me/361way

  1. 2018年7月31日16:23 | #1

    准备仿写一个试试

  1. 本文目前尚无任何 trackbacks 和 pingbacks.