好记性不如烂笔头

Howto Deploy MoinMoin via Nginx and uWSGI

这里的内容不能保证是最新的,最新版在这里:via,请移步。

如何通过Nginx和uWSGI部署MoinMoin

Wiki部署在eNetSouth Cloud的VPS上,前端服务器为Nginx。大家可以从这里了解到eNetSouth Cloud提供的VPS主机。

我会用这篇文章详细的介绍整个部署过程。如果有什么疑问可以到这里提问。

好了言归正传:

要进行下面的你需要对vps,nginx,python以及uwsgi有一些初步的了解,只要是稍微有一些基础知识就可以了,下面的过程基本上来说是很简单的,只要照着一步一步的做就可以了。

服务器环境的配置

VPS安装的系统是Debian Squeeze。首先用下面的命令安装必须的软件:

apt-get update

apt-get upgrade

apt-get install build-essential libpcre3-dev libssl-dev psmisc python-dev libxml2 libxml2-dev python-setuptools

安装Nginx

Nginx的安装暂不做详细介绍,我这里使用的版本是nginx/0.8.54。

为了后面能够通过域名访问wiki,需要在nginx下建立一个虚拟主机,配置文件可以通过这里或者这里下载到,放置到nginx配置文件夹下面就可以了。

cd /etc/nginx/sites-enabled

wget http://c492911.r11.cf2.rackcdn.com/wiki.conf

大家可能注意到uwsgi的启动脚本中有UWSGI_PYHOME、UWSGI_CHDIR和UWSGI_SCRIPT三个参数,分别指向 /usr/local/lib/python2.6/dist-packages、/usr/local/share/moin/server和moin.wsgi。这三个参数是运行moinmoin必需的,一定要写,后面会有详细的介绍。

安装uWSGI

可以从这里下载到uWSGI,有两个版本可以使用,0.9.7.10.9.6.8。0.9.7.1是current stable的版本,而0.9.6.8是long-term-support的版本,随便选一个就可以了。我这里使用的是0.9.7.1版本。详细的安装方法看这里。简单的安装方法如下:

cd /opt

tar zxf uwsgi-0.9.7.1.tar.gz

cd uwsgi-0.9.7.1

make -f Makefile.Py26

安装完成后uwsgi位于/usr/bin/uwsgi中,将/usr/bin/uwsgi拷贝到/usr/local/bin中备用。这里之所以这么做是因为nginx我是用源码安装的,默认安装路径是在/usr/local/nginx中,拷贝过来的原因是为了方便管理。

这里或者这里下载uwsgi的启动脚本,放置到/etc/init.d目录下:

cd /etc/init.d/

wget http://c492911.r11.cf2.rackcdn.com/moin-wsgi

chmod +x moin-uwsgi

然后,通过下面的命令创建uwsgi的日志文件:

touch /var/log/moin-uwsgi.log

chown www-data /var/log/moin-uwsgi.log

最后,通过下面的命令启动uwsgi:

/usr/sbin/update-rc.d -f moin-uwsgi defaults

/etc/init.d/moin-uwsgi start

大家可能注意到uwsgi的启动脚本中有—pythonpath和—wsgi-file两个参数,分别指向 /usr/local/lib/python2.6/dist-packages 和/usr/local/share/moin/moin.wsgi。这两个目录是安装moinmoin时的位置,后面会有详细的介绍。

启动脚本中的参数,大家可以根据实际情况进行修改。

安装MoinMoin

这里我使用的MoinMoin的版本是1.9.3,大家可以从这里下载到:

cd /opt

wget http://static.moinmo.in/files/moin-1.9.3.tar.gz

接下来进行解压并安装:

tar zxf moin-1.9.3.tar.gz

cd moin-1.9.3

python2.6 setup.py install —force —prefix /usr/local —record=install.log

cd /usr/local/share/moin

cp server/moin.wsgi .

cp config/wikiconfig.py .

然后修改配置文件moin.wsgi,在a2)出增加下面一段:

sys.path.insert(0, ‘/usr/local/share/moin’)

接下来做一些必要的配置:

cd /usr/local/share

chown -R www-data:www-data moin

chmod -R ug+rwX moin

chmod -R o-rwx moin

到此便基本配置好了,修改一些必要的wiki配置信息就可以了。

page_front_page = u”FrontPage”

superuser = [u”WikiAdmin”, ]

至此,不出什么意外的话,MoinMoin就配置好了,通过wiki.conf里面的域名就可以访问了。

接下来,你需要去阅读下wiki的文档,做一些必要的配置,学一学wiki的语法就可以使用了。祝大家好运喽。

有什么问题,请大家到这里留言

参考文档:



blog comments powered by Disqus