言归正传,继续配置wiki。
1:
使用如下三条命令安装需要的包
apt-get install python-moinmoin //python wiki已经被强大的ubuntu打包好了,真是业界良心。
apt-get install apache2 //安装apache
apt-get install libapache2-mod-python //开始安装mod-python了。这样才能在后面apache配置中实现ScriptAlias的方法(建议直接换成安装mod-wsgi,这样会更加通用,并且安装原理一模一样。详见下面第二部分)
安装完成后,如下目录比较关键:
usr/share/moin/
#moin wiki的目录
var/log/apache2/
#记录apache网站错误的日志文件目录,如果出现错误又看不到log,可以从这里找到error.log分析细节,十分有用.
2:
sudo mkdir /var/www/mywiki
sudo cp -r /usr/share/moin/data /usr/share/moin/underlay /usr/share/moin/htdocs /usr/share/moin/server/moin.cgi /var/www/mywiki
sudo cp /etc/moin/config/wikiconfig.py /etc/moin/ //真正生效的wikiconfig在这里。
sudo chown -R www-data:www-data /var/www/mywiki //记得给apache开读写权限
3:
修改apache的/etc/apache2/httpd.conf配置文件
添加:
ScriptAlias /wiki "/var/www/mywiki/moin.cgi" //设置网址调转域名选择
Alias /MyWikiSource/ /var/www/mywiki/htdocs/ //这个是取别名,可要可不要。最好加上
网上很多人都在这个配置文件中加了LoadModule wsgi_module modules/mod_wsgi.so 或者LoadModule python_module /usr/lib/apache2/modules/mod_python.so
实际证明,如果用apt-get install安装的module,不写也没关系,系统会根据ScriptAlias关键字,知道需要load这个lib。
4:
修改/etc/moin/wikiconfig.py中的 instance_dir = "/var/www/mywiki"
这样才能找到对应的wiki数据包
5:
另外还需要在该配置文件中,打开url_prefix_static = '/mywiki' + url_prefix_static这个选项。
这样wiki的css、jpg等资源包才能正常加载进来。(如果按照上面的方法,取过了MyWikiSource的别名,那么这里就也可以使用url_prefix_static = '/MyWikiSource'来替代”url_prefix_static = '/mywiki' + url_prefix_static“哦~~! 建议使用这种取别名的方法,不知道什么原因,第一中方法容易时不时的失效,应该和环境变量可能在某些情况下改变有关)
6:
sudo /etc/init.d/apache2 restart 来看看网页吧(your_ip/wiki 网页),如果看不到图片,说明资源包路径设置还是有问题。可以通过var/log/apache2/下的apache log找着看。
:7:(可选)
最后修改编码方式,避免中文乱码
将# -*- coding: iso-8859-1 -*-
改为# -*- coding: utf-8 -*- #使用UTF-8编码
8:(可选)
因为服务器中原来可能安装了其他的apache服务,为了避免哲学服务对域名跳转造成干扰,所以就要为wiki的目录添加例外,在/etc/apache2/httpd.conf中添加
<location "/wiki">
SetHandler None
</location>
这样这个wiki的子域名就不会被干扰到了。
如果转载,请注明出处。谢谢!
因为django已经不支持mod-python了,所以建议wiki和django都用wsgi来部署。故这部分包括django和wiki的共同部署问题。
1:
sudo apt-get install libapache2-mod-wsgi //安装mod_wsgi
2:
拷贝moin.wsgi
sudo cp /usr/share/moin/server/moin.wsgi /var/www/mywiki/
3:
sudo chown -R www-data:www-data /var/www/mywik //让copy的wsgi可以被apache的权限访问到。当然你也可以只去修改wsgi的文件权限。
4:
然后修改apache的/etc/apache2/httpd.conf配置文件。
只需要更换一行即可,其他都和前面一样。原理也是一样的。
#ScriptAlias /wiki "/var/www/mywiki/moin.cgi"
WSGIScriptAlias /wiki "/var/www/mywiki/moin.wsgi" //设置网址调转域名选择
Alias /MyWikiSource/ /var/www/mywiki/htdocs/
这样就可以了。。简单吧。