MoinMoin安装简明指南

来自站长百科
跳转至: 导航、​ 搜索

MoinMoin是用 Python语言写的一个开源Wiki引擎,由德国人开发,基于GNU GPL协议发布。MoinMoin 的软件架构很灵活,通过 Python 能很容易进行功能扩展,现在已开发出大量的 Plugins。MoinMoin 不使用后台数据库存放数据,而是以文本的形式存放在服务器目录中。Moin是德国北部方言"好"、"早上好"的意思,MoinMoin是"很好"的意思。

许多知名网站使用了 MoinMoin,比如 Fedora项目 Wiki、Ubuntu社区 Wiki、Gnome Live 等。可以看一看 MoinMoin 的ScreenShots ,然后再决定是否要装一个来玩。

注意:如果打算安装 MoinMoin,首先要确认系统有没有安装 PythonApache2。

下载[ ]

下载地址:http://static.moinmo.in/files/moin-1.6.0.tar.gz

为了下文叙述方便,假定 MoinMoin 包下载后解压缩至 /opt/moinmoin-1.6.0 目录。

安装moinmoin 引擎[ ]

在终端进入 /opt/moinmoin-1.6.0 后,执行 MoinMoin 安装脚本 setup.py:

  # python -v setup.py --quiet install --record=install.log

安装完后,如未发现出错信息,可以在当前目录下看一看安装时输出的日志文件,可以看到 MoinMoin Wiki 引擎默认被安装在 /usr/lib/python2.x/site-packages/MoinMoin 目录下,MoinMoin Wiki 模板文件被安装在 /usr/share/moin 目录下。

/usr/share/moin 目录下有这样一些重要目录:

  • /usr/share/moin/data:存放WiKi Pages,Users,etc。只能被MoinMoin访问。
  • /usr/share/moin/underlay:存放默认的WiKi Pages,有多种语言版本的帮助文档、默认页面文档等。只能被MoinMoin访问。
  • /usr/share/moin/htdocs:存放网页元素,如图片、主题风格等。可被Web Server(Apache、IIS等)访问。
  • /usr/share/moin/server:存放服务器启动脚本示例。
  • /usr/share/moin/config:存放配置文件示例。

通过拷贝模板文件,就可生成不同的 Wiki 实例(即多个 Wiki 站点,Wiki Farm)。另外,MoinMoin 的软件升级也很简单,只需用新版本的模板文件覆盖旧的就可以了。

安装 moinmoin wiki 实例[ ]

这里只讲述一个 Wiki 实例的安装,多个 Wiki 实例的安装与此是同样的道理。关于多个 Wiki 实例的安装与配置请参考 Wiki Farming 文档,我曾经尝试过,但是很不幸,没有成功。后来用了一种好像很笨的方法才可以。

首先选定 Wiki 实例的安装位置,本文假定是安装在 /usr/local/var/wikis 目录下。

然后将 MoinMoin Wiki 模板目录中的 data、underlay、wikiconfig.py 复制到Wiki 实例目录:

# cp -rf /usr/share/moin/data    /usr/local/var/wikis
# cp -rf /usr/share/moin/underlay   /usr/local/var/moin
# cp /usr/share/moin/config/wikiconfig.py  /usr/local/var/moin

下一步是设置 Wiki 实例目录权限,以便 Web 服务器有权限访问页面,gentoo 下 apache 默认用户组与用户均为 apache(在 Debian、Ubuntu 系统中,apache 默认用户组与用户是 www-data),Wiki 实例目录权限设置如下:

# chown -R apache.apache    /usr/local/var/wiki
# chmod -R ug+rw     /usr/local/var/wiki
# chmod -R o-rwx     /usr/local/var/wiki

配置 apache + mod_python 环境[ ]

此举是让 apache2 配合 python 生成 MoinMoin Wiki 页面,但是 apache2 与 python 的配合需要由apache 模块 mod_python 的支持才能实现。

首先要安装 mod_python,Gentoo Linux 下可以使用 emerge 安装,其他 Linux 发行版的软件仓库中通常也有 mod_python,请按照相应的安装方法进行。

# emerge -avt  mod_python

在 Gentoo Linux 下可以修改 /etc/conf.d/apache2 文件启用 apache 的 Python 选项(其他 Linux 发行版,请参阅相应的 apache 配置文档),即在 “APACHE2 OPTS” 项中添加 “-D PYTHON”:

APACHE2_OPTS="-D DEFAULT_VHOST -D INFO -D LANGUAGE -D SSL -D SSL_DEFAULT_VHOST -D SUEXEC -D PYTHON"

最后还需要让 apache 能够找到 Wiki 实例所在位置,可在 apache2 配置文件 (通常是 /etc/apache2/httpd.conf) 底部中添加以下信息:

Alias /moin_static160 "/usr/share/moin/htdocs"
<Directory /usr/share/moin/htdocs>   ### 开放目录权限
       Order allow,deny
       Allow from all
</Directory>
<Location /moin>
       SetHandler python-program
       PythonPath "['/usr/local/var/wiki/'] + sys.path"
       PythonHandler MoinMoin.request::RequestModPy.run
</Location>

上述 apache2 配置文件的修改,在使用 Alias 指令指定 MoinMoin Wiki 系统模板的别名后,应当开放其访问权限,这一点很重要,如果不这样设定,那么 MoinMoin 安装完毕后,可能无法访问 Wiki 主题样式。

修改完后,重启 apache2:

# /etc/init.d/apache2 restart

配置 moinmoin 环境[ ]

这是最后一步,对 Wiki 实例目录下的 wikiconfig.py 文件进行一些修改。由于这个文件默认是 iso-8859-1 编码的,若在该文件中输入中文,保存时会出现乱码,所以在修改之前,自己想办法把文件转换为 utf-8 编码的,可以使用 iconv 进行编码转换。

对该文件几处必要的修改处如下:

# -*- coding: utf-8 -*-                         #使用UTF-8编码
from MoinMoin.multiconfig import DefaultConfig
class Config(DefaultConfig):
    # 要用绝对路径!
   data_dir = '/usr/local/var/wiki/data/'
   data_underlay_dir = '/usr/local/var/wiki/underlay/'
    url_prefix = '/moin_static160'
    # 在此预先设定管理员账户名,待 MoinMoin Wiki 配置完成后,
   # 再注册该账户,该即成为管理员
   superuser = [u"silence", ]
    navi_bar = [
       u'%(page_front_page)s',
       u'RecentChanges',
       u'FindPage',
       u'HelpContents',
   ]
      #设定页面主题,也就是页面样式或者皮肤
   theme_default = 'modern'
      # 设置默认语言环境为中文
   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$'
    show_hosts = 1   

ok,配置工作基本完成了,现在如果不放心,再重新启动一次 apache2,然后就可以访问你的 MoinMoin wiki 了。

访问 moinmoin wiki[ ]

IE 地址栏里键入“http://localhost/wiki” ,看看是否可以正常显示 Wiki 页面。

MoinMoin Wiki 安装完后,还是要配置一些东西,但这只是美化页面的事情,待日后慢慢讲来。

相关条目[ ]

参考来源[ ]

参考来源