搭建个人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、开发环境等,需要的时候才后悔莫及。最近发觉好久都没有看书了。这篇博客其实很多东西网上都能找得到资料,现在为了完成每个月写四篇博客的计划,先暂时将这几天整理的资料先分享出来,以后再随着自己的使用情况逐步完善。另一方面,这样好的工具确实需要尽快搭建起来。早使用早受益。