8.12. 安装MoinMoin服务器
MoinMoin是用Python语言写的一个开源WiKi服务器。它基于GNU GPL协议,使用简便、功能强大,通过Python很容易进行功能扩展。MoinMoin不使用后台数据库存放数据,而是以文本的形式存放在服务器中。 debin Wiki网站使用的WiKi系统就是MoinMoin。
MoinMoin 不带Web服务器,需与Web服务器配合才能进行WiKi页面的发布。MoinMoin支持的Web服务器有Apache+CGI、Apache+ FastCgi、Apache+Mod_Python、IIS、TwistedWeb和WebLogic等。下面介绍一下MoinMoin+ TwistedWeb在Debian系统下的安装过程。
*
在安装MoinMoin前请安装好Python,最好使用最新的版本。安装MoinMoin的命令如下:
debian:~# apt-get install python2.4-moinmoin moinmoin-common python2.4-twisted python2.4-twisted-bin
[Note]
安装软件包时要注意版本问题,2.3的包不能和2.4的包混用。
MoinMoin的源码被安装到/usr/lib/python2.4/site-packages/MoinMoin目录。/usr/share /moin目录存放MoinM
oin系统的模板,内容大致有以下几类:
o
/usr/share/moin/data目录存放WiKi Pages,Users,etc。只能被MoinMoin访问。
o
/usr/share/moin/underlay目录存放WiKi Pages。只能被MoinMoin访问。
o
/usr/share/moin/htdocs目录存放网页元素,如图片、主题风格等。可被Web Server访问
o
/usr/share/moin/server目录存放服务器启动脚本示例。
o
/usr/share/moin/config目录存放配置文件示例。
通过拷贝模板目录中的文件,就可生成不同的WiKi实例。MoinMoin的软件升级也很简单,只需用新版的模板文件下覆盖旧文就可以了。
*
创建MoinMoin实例
在服务器上创建一个目录用于存放实例,目录名不能是wiki,它已被系统保留使用,一个不错的选择是mywiki。
debian:~# mkdir mywiki
从模板目录拷贝实例所需文件。
debian:~# cp -rf /usr/share/moin/data ~/mywiki
debian:~# cp -rf /usr/share/moin/underlay ~/mywiki
debian:~# cp /usr/share/moin/config/wikiconfig.py ~/mywiki
debian:~# cp /usr/share/moin/server/mointwisted mointwisted.py ~/mywiki
*
设置实例目录权限
Debian中的MoinMoin系统默认使用www-data用户运行WiKi服务器。所以我们的权限设置是:
debian:~# chown -R www-data.www-data ~/mywiki
debian:~# chmod -R ug+rw ~/mywiki
debian:~# chmod -R o-rwx ~/mywiki
*
配置TwistedWeb
TwistedWeb的MoinMoin配置文件是mointwisted.py,在上面我们已从模板目录拷贝到实例目录。用vim等文本编辑器打开,需 修改两个地方,以指向正确的配置文件路径,修改后的内容如下:
"""
twisted.web based wiki server
Run this server with mointwisted script on Linux or Mac OS X, or
mointwisted.cmd on Windows.
@copyright: 2004-2005 Thomas Waldmann, Oliver Graf, Nir Soffer
@license: GNU GPL, see COPYING for details.
"""
# System path configuration
import sys
# Path of the directory where wikiconfig.py is located.
# YOU NEED TO CHANGE THIS TO MATCH YOUR SETUP.
#sys.path.insert(0, '/etc/moin')
sys.path.insert(0,'/root/mywiki') #修改1:指向你的wikiconfig.py文件所在的目录
# Path to MoinMoin package, needed if you installed with --prefix=PREFIX
# or if you did not use setup.py
# Path to the directory where farmconfig is located (if different).
#sys.path.insert(0, '/etc/moin') #修改2:注释掉该行内容
# Debug mode - show detailed error reports
## import os
## os.environ['MOIN_DEBUG'] = '1'
from MoinMoin.server.twistedmoin import TwistedConfig, makeApp
class Config(TwistedConfig):
# Server name
# Used to create .log, .pid and .prof files
name = 'mointwisted'
# Path to moin shared files (default '/usr/share/moin/wiki/htdocs')
docs = '/usr/share/moin/htdocs'
# The server will run with as this user and group (default 'www-data')
user = 'www-data'
group = 'www-data'
# Port (default 8080)
# To serve privileged port under 1024 you will have to run as root
port = 8080
# Interfaces (default [''])
# The interfaces the server will listen to.
# [''] - listen to all interfaces defined on the server
# ['red.wikicolors.org', 'blue.wikicolors.org'] - listen to some
# If '' is in the list, other ignored.
interfaces = ['']
# How many threads to use (default 10, max 20)
# The more threads you use, the more memory moin uses. All thread
# use one CPU, and will not run faster, but might be more responsive
# on a very busy server.
threads = 10
# Set logfile name (default commented)
# This is the *Apache compatible* log file, not the twisted-style logfile.
# Leaving this as None will have no Apache compatible log file. Apache
# compatible logfiles are useful because there are quite a few programs
# which analyze them and display statistics.
## logPath = 'mointwisted.log'
# Memory profile (default commented)
# Useful only if you are a developer or interested in moin memory usage
## from MoinMoin.util.profile import TwistedProfiler
## memoryProfile = TwistedProfiler('mointwisted',
## requestsPerSample=100,
## collect=0)
# Hotshot profile (default commented)
# Not compatible with threads.
## hotshotProfile = name + '.prof'
# Create the application
application = makeApp(Config)
*
配置MoinMoin Wiki系统
Single Wiki的配置文件是wikiconfig.py,位于实例目录下,它默认已可很好工作。它的内容如下:
# -*- coding: iso-8859-1 -*-
# IMPORTANT! This encoding (charset) setting MUST be correct! If you live in a
# western country and you don't know that you use utf-8, you probably want to
# use iso-8859-1 (or some other iso charset). If you use utf-8 (a Unicode
# encoding) you MUST use: coding: utf-8
# That setting must match the encoding your editor uses when you modify the
# settings below. If it does not, special non-ASCII chars will be wrong.
"""
MoinMoin - Configuration for a single wiki
If you run a single wiki only, you can omit the farmconfig.py config
file and just use wikiconfig.py - it will be used for every request
we get in that case.
Note that there are more config options than you'll find in
the version of this file that is installed by default; see
the module MoinMoin.multiconfig for a full list of names and their
default values.
Also, the URL
http://moinmoin.wikiwikiweb.de/HelpOnConfiguration has
a list of config options.
@copyright: 2000-2005 by Juergen Hermann <jh@web.de>
@license: GNU GPL, see COPYING for details.
"""
from MoinMoin.multiconfig import DefaultConfig
class Config(DefaultConfig):
# Wiki identity ----------------------------------------------------
# Site name, used by default for wiki name-logo [Unicode]
sitename = u'Untitled Wiki'
# Wiki logo. You can use an image, text or both. [Unicode]
# Example: u'<img src="http://images.cnblogs.com/cnblogs_com/doujiu/wiki/mywiki.png" alt="My Wiki">My Wiki'
# For no logo or text, use ''
logo_string = sitename
# The interwiki name used in interwiki links
interwikiname = None
# Critical setup ---------------------------------------------------
# Misconfiguration here will render your wiki unusable. Check that
# all directories are accessible by the web server or moin server.
# If you encounter problems, try to set data_dir and data_underlay_dir
# to absolute paths.
# Where your mutable wiki pages are. You want to make regular
# backups of this directory.
data_dir = './data/'
# Where read-only system and help page are. You might want to share
# this directory between several wikis. When you update MoinMoin,
# you can safely replace the underlay directory with a new one. This
# directory is part of MoinMoin distribution, you don't have to
# backup it.
data_underlay_dir = './underlay/'
# This must be '/wiki' for twisted and standalone. For CGI, it should
# match your Apache Alias setting.
url_prefix = '/wiki'
# Security ----------------------------------------------------------
# Security critical actions (disabled by default)
# Uncomment to enable options you like.
#allowed_actions = ['DeletePage', 'AttachFile', 'RenamePage']
# Enable acl (0 to disable)
acl_enabled = 1
# IMPORTANT: grant yourself admin rights! replace YourName with
# your user name. See HelpOnAccessControlLists for more help.
# All acl_rights_xxx options must use unicode [Unicode]
#acl_rights_before = u"YourName:read,write,delete,revert,admin"
# Link spam protection for public wikis (Uncomment to enable)
# Needs a reliable internet connection.
#from MoinMoin.util.antispam import SecurityPolicy
# Mail --------------------------------------------------------------
# Configure to enable subscribing to pages (disabled by default)
# or sending forgotten passwords.
# SMTP server, e.g. "mail.provider.com" (empty or None to disable mail)
mail_smarthost = ""
# The return address, e.g "My Wiki <noreply@mywiki.org>"
mail_from = ""
# "user pwd" if you need to use SMTP AUTH
mail_login = ""
# User interface ----------------------------------------------------
# Add your wikis important pages at the end. It is not recommended to
# remove the default links. Leave room for user links - don't use
# more than 6 short items.
# You MUST use Unicode strings here, but you need not use localized
# page names for system and help pages, those will be used automatically
# according to the user selected language. [Unicode]
navi_bar = [
# Will use page_front_page, (default FrontPage)
u'%(page_front_page)s',
u'RecentChanges',
u'FindPage',
u'HelpContents',
]
# The default theme anonymous or new users get
theme_default = 'modern'
# Language options --------------------------------------------------
# See
http://moinmoin.wikiwikiweb.de/ConfigMarket for configuration in
# YOUR language that other people contributed.
# The main wiki language, set the direction of the wiki pages
default_lang = 'en'
# You must use Unicode strings here [Unicode]
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$'
# Content options ---------------------------------------------------
# Show users hostnames in RecentChanges
show_hosts = 1
# Enumerate headlines?
show_section_numbers = 0
# Charts size, require gdchart (Set to None to disable).
chart_options = {'width': 600, 'height': 300}
*
启动MoinMoin WiKi服务器
debian:~/mywiki# ./mointwisted start
在当前目录会生成一个叫twistd.log的日志文件。如果成功启动,日志文件的内容为:
2005/12/13 11:48 CST [-] Log opened.
2005/12/13 11:48 CST [-] twistd 2.0.1 (/usr/bin/python2.4 2.4.2) starting up
2005/12/13 11:48 CST [-] reactor class: twisted.internet.selectreactor.SelectReactor
2005/12/13 11:48 CST [-] Loading mointwisted.py...
2005/12/13 11:48 CST [-] Enabling Multithreading.
2005/12/13 11:48 CST [-] Loaded.
2005/12/13 11:48 CST [-] MoinMoin.server.twistedmoin.MoinSite starting on 8080
2005/12/13 11:48 CST [-] Starting factory <MoinMoin.server.twistedmoin.MoinSite instance at 0xb76004cc>
2005/12/13 11:48 CST [-] set uid/gid 33/33
MoinMoin成功启动后,在浏览器上打开
http://server_name:8080网址即可访问。停止服务器用stop参数即可。用不带参数的 mointwisted命令可以查看命令参数,如:
debian:~/mywiki# ./mointwisted
error: nothing to do
mointwisted - MoinMoin daemon
usage: mointwisted command
commands:
start start the server
stop stop the server
restart stop then start the server
kill kill the server
@copyright: 2004-2005 Thomas Waldmann, Nir Soffer
@license: GNU GPL, see COPYING for details.
相关推荐
windows平台下好用的wiki,集成了latex的moinmoin,安装简易,懒人适用。 3分钟快速安装。
基于Python的MoinMoin.pdf
基于Python的MoinMoin
用python写的wiki引擎
moinmoin-wiki ============= 带有Moinmoin Wiki引擎,uwsgi,nginx和自签名SSL的Docker映像。 一切都包含在最小的模糊中,并且可以正常工作。 您可以使用以下命令自动下载并运行此程序 sudo docker run -d -p 443:...
docker-moinmoin 在 ubuntu 14.04 baseimage 上使用 Python 2.7.6、uWSGI 1.9.17 和 nginx 1.4.6 测试 1.9.8 的图像。用法 $ sudo mkdir -p /opt/data/moinmoin$ sudo docker run -d -p 8080:80 -v /opt/data/...
MoinMoin的特点 完全使用文件来存储内容,不使用数据库 实现了全部Wiki规范,Unicode编码支持多语种 完整实用的wiki文本约定,编辑规则比较轻巧易学,包含所见即所得编辑环境 拥有访问权限控制 支持...
最方便的moinmoin wiki,不用安装Python,apache
负载开关一个用于上传 sage 工作表的 moinmoin 操作插件要使用它,您需要一个安装了 sagecell moinmoin 插件的 moinmoin wiki。 只需将其复制到您的插件/操作文件夹中即可。
moinmoin 是著名的维基软件
MoinMoin Wiki项目已移动-请访问我们的新网站http://moinmo.in/并更新您的书签。
ep_moinmoin_export 将当前打击垫内容导出为 MoinMoin Wiki ( ) 格式。 支持的默认格式和附加标签。 基于 乳胶出口 ...安装 npm install ep_moinmoin_export (from your etherpad-lite folder)
本文假定已经按照官方指引 Quick MoinMoin on CentOS 完成了 apache 和 mod_wsgi 之外的基础安装 安装 Nginx 默认情况下,CentOS 下没有 nginx 的源,需要自己手动添加,访问 ...
它可以完成各种各样的角色,例如部署在笔记本电脑或家庭Web服务器上的个人笔记组织者,部署在Intranet上的公司知识库或向共享相同兴趣,目标或项目的个人开放的Internet服务器。 文档和支持 注意:moin2尚未发布,...
sdlwiki:这是SDL Wiki的原始内容。 这是从MoinMoin过渡而来的,请耐心等待。 您可以在https上进行编辑
moinmoin wiki 的1.9.2版本安装包,还作为作为桌面版wiki.,python
档案DCMI档案MoinMoin Wiki(2003-2010)。 从2003年到2010年,DCMI使用MoinMoin Wiki(“ Wiki”),因为它们不是作为一个大型Wiki而是作为MoinMoin的单个实例而建立的,确切地说是13个。 在此期间,DCMI谨慎地说,...
trello2textTrello板列表输出到文本现在以适合MoinMoin Wiki的格式输出到控制台有用的链接: Trello API: : Trello API Python库: : 以JSON形式查看完整版面: : 简单的GET即可查看板卡JSON: : cards=open card_...
使用 WikiImageMapper,您可以轻松地为 MoinMoin Wiki 创建图像映射(安装了 ImageMap 解析器)。 该项目基于 JImageMapper。