MoinMoin1.8.3终于安装好了,记下步骤以便日后需要。由于对apache2、Python、MoinMoin都不懂,所以都是生搬硬套的步骤:
1.打开终端,切换到管理员权限
sudo -i
2.安装Apache2
apt-get install apache2
3.下载MoinMoin1.8.3
官方网站下载地址
4.解压缩MoinMoin 1.8.3 tar.gz到一个目录,这里用的是/opt/moinmoin-1.8.3。安装前可以参看/opt/moinmoin-1.8.3/docs/install.html文档。
5.在终端进入/opt/moinmoin-1.8.3目录进行安装
cd /opt/moinmoin-1.8.3
python -v setup.py --quiet install --record=install.log
安装后,可以在当前目录下看一看安装时输出的日志文件 install.log, 它记录了安装过程中的一些信息。MoinMoin Wiki 模板文件被安装在 /usr/local/share/moin 目录下。如果要指定MoinMoin安装的位置,可以参看前面提到的install.html文档来修改一下安装命令。
测试MoinMoin安装正确与否:
python
“>>>”提示符下输入:
import MoinMoin
如果仅有“>>>”提示符,则说明MoinMoin的安装正确,如果提示“……ImportError: No module named MoinMoin”,说明MoinMoin的安装有问题。
退出python:
exit()
6.安装MoinMoin实例
模板目录/usr/local/share/moin 下有这样一些重要目录:
/usr/local/share/moin/data:存放WiKi Pages,Users,etc。只能被MoinMoin访问。
/usr/local/share/moin/underlay:存放默认的WiKi Pages,有多种语言版本的帮助文档、默认页面文档等。只能被MoinMoin访问。
/usr/local/share/moin/htdocs:存放网页元素,如图片、主题风格等。可被Web Server(Apache、IIS等)访问。
/usr/local/share/moin/server:存放服务器启动脚本示例。
/usr/local/share/moin/config:存放配置文件示例。
通过拷贝模板目录中的文件,就可生成不同的 Wiki 实例(即多个 Wiki 站点)。
首先选定 Wiki 实例的安装位置,假定安装在 /usr/local/var/moin 目录下。将 MoinMoin Wiki 模板目录中的 data、underlay、wikiconfig.py 复制到Wiki 实例目录:
mkdir /usr/local/var/moin
cp -rf /usr/local/share/moin/data /usr/local/var/moin
cp -rf /usr/local/share/moin/underlay /usr/local/var/moin
cp /usr/local/share/moin/config/wikiconfig.py /usr/local/var/moin
根据install.html,如果要建立多个wiki,也只需要在系统中保有一个underlay目录,不过还没有试过。
7.为apache2的用户组和用户设置 访问Wiki 实例目录的权限,可以查看/etc/apache2/envvars文件找到 apache2 的用户组和用户名称均为 www-data。
chown -R www-data.www-data /usr/local/var/moin
chmod -R ug+rwX /usr/local/var/moin # USER.GROUP may read and write
chmod -R o-rwx /usr/local/var/moin # everybody else is rejected
8.安装 moin.cgi
cd /usr/local/var/moin
mkdir cgi-bin
cp /usr/local/share/moin/server/moin.cgi cgi-bin
chown -R www-data.www-data /usr/local/var/moin/cgi-bin
chmod -R ug+rx /usr/local/var/moin/cgi-bin
chmod -R o-rwx /usr/local/var/moin/cgi-bin
gedit /usr/local/var/moin/cgi-bin/moin.cgi
在moin.cgi的最前面加入以下两行,保存。
import sys
sys.path.insert(0, ‘/usr/local/var/moin/')
9.配置 apache2
由于我的系统是ubuntu,缺少libapache2-mod-python,我们需要先安装这个库文件
sudo apt-get install libapache2-mod-python
gedit /etc/apache2/httpd.conf
添加以下内容:
Alias /moin_static183/ "/usr/local/share/moin/htdocs/" ###根据Moin版本不同,moin_static183名字不同,与wiki实例的wikiconfig.py文件中的url_prefix_static匹配。无论运行多少个wiki实例,只需要定义一次Alias
ScriptAlias /moin "/usr/local/var/moin/cgi-bin/moin.cgi" ###每个wiki实例定义一个ScriptAlias
<Directory /usr/local/share/moin/htdocs> ###开放目录权限
Order allow,deny
Allow from all
</Directory>
<Location /moin>
SetHandler python-program
PythonPath "['/usr/local/var/moin/'] + sys.path"
PythonHandler MoinMoin.request.request_modpython::Request.run
PythonInterpreter first
</Location>
10.配置 MoinMoin 环境
对 Wiki 实例目录下的 wikiconfig.py 文件进行修改。由于这个文件默认是ISO-8859-15而不是 utf-8 编码,要在里面输入中文保存时会出现乱码,所以把该文件转换为 utf-8 编码的。
下面的方法可以简单的实现上面的目的:
mv wikiconfig.py wikiconfig_en.py
gedit wikiconfig_en.py
然后另存为wikiconfig.py,注意选择字符编码为UTF-8。
gedit wikiconfig.py
修改wikiconfig.py中的部分内容:
data_dir = '/usr/local/var/moin/data/'
data_underlay_dir = '/usr/local/var/moin/underlay/'
url_prefix_static = '/moin_static183'
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$|模板$'
根据Moin版本不同,'/moin_static183'不同。
其他内容可以根据需要以后再改。
11.重启Apache2服务器,修改wikiconfig.py后都需要重启Apache
/etc/init.d/apache2 restart
12.访问 http://localhost/moin
注:Python是Ubuntu已经安装有的,可在终端中查看版本
python -V