搭建个人MoinMoin维基工具

很早以前就想写关于 MoinMoin 这个软件的介绍了,我曾经
在自己的电脑上搭建过,在公司的电脑上搭建过,也为整个部门搭建过。中间遇到了一些问题,曾经解决过了。也有备份过一些数据,结果现在都找不到了。结果,还是得手动一步一步来尝试了,而且在写这篇文章时,依然还是什么都不知道。你们说这是不是很悲剧啊?但由于程序员那种不服输的精神,忘记了,不怕,咱继续来尝试~


1.1 简要安装

1.1.1 下载软件

下载 MoinMoin V1.9.7
[http://moinmo.in/MoinMoinDownload]

下载安装 Python 2.7.5
[http://www.python.org/download/]

1.1.2 安装Python


看说明文档时,只需要选择前两项,不需要选择  'Test Suite', 'Utility Scripts', 'Documentation'

1.1.3 解压 MoinMoin


解压 MoinMoin,双击 wikiserver.py 文件:

在浏览器中访问:
[http://localhost:8080/]

现在这个版本的安装真的是简单啊,这么方便了,佩服,做得越来越好了。

1.2 使用小技巧


1.2.1 添加用户密码太简单


在添加用户的时候遇到这个错误:不可接受的密码:口令太简单了(口令包含用户名或者用户名包含口令)

那么咱们给它来个复杂的,例如:“MiPDm8WmPhs4”,哈哈,这样就行

1.2.2 设定自己为超级用户


moin-1.9.7/wiki/config/wikiconfig.py

找到 superuser 一行,superuser = [u"yangjie", ]

1.2.3 安装语言包


在这一步前应该先将自己这个用户设置成超级用户才行。

在 [http://localhost:8080/LanguageSetup] 页面上,点击 "install help and system page packages" 跳转到语言包页面。尽量安装中文和英文的语言包。

安装完毕后,重启 wiki 服务器。

在 "帮助目录" 栏目下,有很详细的目录配置说明。

1.2.4 开机自动启动批处理的脚本


1. 新建批处理文件 wiki.bat,放到 wikiserver.py 同目录下,写入如下内容:

wikiserver.py

2. 在同目录下建立 wiki.vbs,写入如下内容

set ws = WScript.CreateObject("WScript.Shell")
ws.Run "wiki.bat", 0

3. 将 wiki.vbs 加入到“启动”文件夹,就可以实现不用弹出黑色命令行窗口,就启动了 wiki 的服务器。非常实用(毕竟任务栏上又少了一个窗口)。

1.2.5 出现中文乱码


设定 wikiconfig.py 为 UTF-8 编码。即在第一行修改成 utf-8

设定 instance_dir 为绝对路径

设定为语言为中文格式
language_default = 'zh'


修改如下代码:
page_category_regex = u'^Category[A-Z]'
page_dict_regex = u'[a-z]Dict$'
page_form_regex = u'[a-z]Form$'
page_group_regex = u'[a-z]Group$'
page_template_regex = u'[a-z]Template$'

重启服务器。

上述几种方式,重启后可能依然不能解决问题。但后来我在使用了 fastCGI 的方式时,居然解决了中文的问题。所以如果上述步骤不行时,请再尝试设置成 fastCGI 的方式。

1.3 apache 服务器


尽管可以通过 vbs 脚本的方式将命令行窗口给隐藏,但毕竟只能自己访问。有时候想和队友一起共享下自己的劳动成功,让他们可以直接访问到本地的wiki,那会多好呢。是吧?   

这一部分可以参照 wiki 的安装部分。
moin-1.9.7/docs/INSTALL.html

这里是好详细的安装配置说明信息
[http://moinmo.in/HowTo/WindowsWithApacheServer]

1.3.1 安装 mod_wsgi


1. 下载正确对应 python 版本的文件
将文件放到 Apache Software Foundation/Apache2.2/modules/ 目录下,注意将下载的文件名改成 “mod_wsgi.so”

2. 配置 apache 自动加载模块

在 Apache2.2/conf/httpd.conf 中添加一句 "LoadModule wsgi_module modules/mod_wsgi.so"

3. 重启 apache 服务

1.3.2 安装 MoinMoin 到 python 库中


打开命令提示符,进入到 moin-1.9.7,执行如下命令:

c:\Python27\python setup.py install --record=install.log

将会创建如下文件夹信息:

C:\Python\share\moin
C:\Python\Lib\site-packages\MoinMoin

1.3.3 修改定义的数据路径


创建如下的命令,拷贝模板数据:

cd /d f:\dropbox\
md Moin
md Moin\mywiki
md Moin\mywiki\data
md Moin\mywiki\underlay

cd f:\Python27\share\moin
xcopy data        f:\dropbox\Moin\mywiki\data /E
xcopy underlay    f:\dropbox\Moin\mywiki\underlay /E
copy  config\*.* f:\dropbox\Moin\mywiki\*.*
copy  server\*.* f:\dropbox\Moin\mywiki\*.*

1.3.4 问题及解决


* Forbidden: You don't have permission to access /mywiki on this server.
 
  设置 <Directory />     Allow from all,注意 Allow 关键字

1.4 Windows下的简单备份

1.4.1 Windows Server 2003 Resource Kit Tools


下载对应的工具 [http://www.microsoft.com/en-us/download/confirmation.aspx?id=17657]

1.4.2 创建备份目的地


能够将文件备份到其他硬盘、U盘或者网盘中,以下将以网盘为例。

1.4.3 dropbox


参照说明的文档,发现就是将 mywiki 文件夹定时备份到其他地方而已。那用 dropbox 工具就行了,自动将 mywiki 文件夹都同步到服务器上了。

1.5 提升编辑速度


现在在 apache 搭建成功,但点击编辑按钮会变得非常卡,这可不好用。

这就是解决办法:[http://moinmo.in/HowTo/ApacheWithModWSGI]

设置采用的 CGI 脚本为如下,详细代码参照上面提到的网址内容

WSGIScriptAlias /mywiki "f:/dropbox/Moin/mywiki/moin.wsgi"

原文提到的修改 moin.wsgi 部分不是很详细,可以参照如下设置:

在 a1 步骤,修改这条语句,使得可以能够正确找到网站所需要的资源。
sys.path.insert(0, 'f:/Python27/Lib/site-packages/')

在 a2 步骤,示例语句如下:
sys.path.insert(0, 'f:/dropbox/Moin/mywiki/')

设置完毕,重新启动后,居然有惊人的发现。原来不正确的中文字符,现在居然都正常了,原来的 RecentChanges 不是显示最近修改列表,现在居然也正常了。太高兴啦~

1.6 资料


1. MoinMoin的简单上手
[http://blog.log4d.com/2011/12/moinmoin-kms/]

1.7 总结


最近很忙,参加了一些活动,才发觉自己的技术太差,要学习的东西太多,甚至连自己心爱的电脑上居然都没有wiki、开发环境等,需要的时候才后悔莫及。最近发觉好久都没有看书了。这篇博客其实很多东西网上都能找得到资料,现在为了完成每个月写四篇博客的计划,先暂时将这几天整理的资料先分享出来,以后再随着自己的使用情况逐步完善。另一方面,这样好的工具确实需要尽快搭建起来。早使用早受益。



你可能感兴趣的:(软件开发,维基)