`

moinmoin 安装

 
阅读更多

MoinMoin是一个python版的wiki,最初由德国人编写,支持标准的所有wiki语法,还有多种插件可供选择,可以通过插件支持tex,默认有ppt展示等等,非常不错,。很多大型wiki都用moinmoin,如ubuntu的wiki[http://wiki.ubuntu.org.cn/%E9%A6%96%E9%A1%B5],国内著名的啄木鸟python网站[http://wiki.woodpecker.org.cn/moin/],所以选他不会错。他有什么特点呢?不使用数据库,你说对了,不使用数据库可以使得升级和”搬家“没有后顾之忧。效率会低吗?不会,他支持百万级的页面没有问题。放心用吧。

 

安装过程如下:

 

安装前的说明:

moinmoin有QuickInstallation和Server Installation两种方式。主要区别是:

Quick Installation只是简单的搭建起来没有权限管理等。

Server Installation比较正规了,什么都有。所以建议还是Server Installation吧。

 

可以使用 Apache + wsgi 来安装,也可以使用 nginx + wsgi来安装。下面分别来叙述。

叙述前先解释一下什么是wsgi?

wsgi:Web Server Gateway Interface

所以对应的服务器下需要对应的mod_wsgi模块插件,例如apache需要的mod_wsgi模块和nginx需要的mod_wsgi是不同的。

 

1. 安装apache [Install Apache]:

    $sudo apt-get install apache2

2. 安装python [Install python, python-dev]:

     python 默认ubuntu上已经有了,所以不用费劲了。如果没有,那就安装一下:

     $sudo apt-get install python python-dev

3. 安装适合apache的mod_wsgi模块 [Install mod_wsgi for Apache]
     $sudo apt-get install libapache2-mod-wsgi
OR install mod_wsgi for Apache with source code
     http://code.google.com/p/modwsgi/
    ./configure --with-apxs=/usr/local/apache/bin/apxs --with-python=/usr/bin/pythonmakemake install
    apxs 需要单独安装,是APache eXtenSion tool

    $sudo apt-get install apache-dev

    既然都用ubuntu了,而且目标是apache对应的wsgi,没有必要自己折腾了,直接装wsgi就行了。想折腾的可以好好折腾。

4. 安装MoinMoin [Install MoinMoin]

   a) 从http://moinmo.in/MoinMoinDownload 获取最新的源码包,我下载的时候是1.9.7

   b) 解压: $tar -xvf moin-x.x.x.tar.gz

   c) 将moin的库和模块安装到python里:

       $cd moin-x.x.x

       $sudo python setup.py install --force --record=install.log

   d) 检查MoinMoin模块是否安装正常:

       $python

       >>>import MoinMoin;

       >>>

       如果不报错说明MoinMoin模块安装正常。

   e) 配置wiki的服务器文件

       创建的文件层次说明:

       |------------------------/var/moinsource  存放moin启动的配置文件与mod_wsgi结合时读取

       |------------------------/var/moinwiki       存放wiki的数据文件,如页面内容等

       $cd /var

       $mkdir moinsource moinwiki

       $sudo cp -rf /usr/local/share/moin/data moinwiki  #将之后的页面数据文件存放在这里

       $sudo cp -rf /usr/local/share/moin/underlay moinwiki #将wiki自带的页面文件存放在这里

       其中/usr/local/share/moin 的路径根据你安装的python位置来定。找不到的话也没事,可以直接从刚才的安装包里的wiki目录下找到然后拷贝过来。

 

       $cd ../moinsource

       $sudo cp -rf /usr/local/share/moin/config .

       $sudo cp -rf /usr/local/share/moin/server .

       $cp config/wikiconfig.py .

       $cp server/moin.wsgi .

       1) 修改 moin.wsgi 

       将  #sys.path.insert(0, 'path/to/wikiconfigdir')解注释,并填写对应的路径,我的是:

        sys.path.insert(0, '/var/moinsource')

        注意这个是python文件,所以sys之前不要有空格(python以缩进作为代码块的区分)

       2) 修改 wikiconfig.py

       将  data_dir = os.path.join(instance_dir, 'data', '')

             data_underlay_dir = os.path.join(instance_dir, 'underlay', '')

        最后的''里填入对应的路径:

            data_dir = os.path.join(instance_dir, 'data', '/var/moinwiki/data')

            data_underlay_dir = os.path.join(instance_dir, 'underlay', '/var/moinwiki/underlay')

 

       需要超级管理员的话,可以解注释:#superuser = [u"YurName"],然后替换YourName为管理员用户名,在之后启动的wiki的注册页面里用这个用户名进行注册即可。  

        

        3)让www-data用户(apache用户)拥有hod住moinwiki文件的权限

              $cd /var

              $sudo chown -R www-data:www-data moinwiki

              $sudo chmod -R ug+rw moinwiki

 

       f ) 配置apache运行moinwiki

         如果不想占用默认的80端口的apache虚拟机,可以让apache另外监听其他端口,实现apache多端口配置。如果直接使用80端口在的虚拟机,只更改/etc/apache2/site-enabled/000-default即可。

         1)使用默认的80端口所在的虚拟机:

         编辑/etc/apache2/site-enabled/000-default

         删除之前的配置信息:

        

        DocumentRoot /var/www
	<Directory />
		Options FollowSymLinks
		AllowOverride None
	</Directory>
	<Directory /var/www/>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride None
		Order allow,deny
		allow from all
	</Directory>

	ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
		AllowOverride None
		Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
		Order allow,deny
		Allow from all
	</Directory>

        Alias /doc/ "/usr/share/doc/"
        <Directory "/usr/share/doc/">
            Options Indexes MultiViews FollowSymLinks
            AllowOverride None
            Order deny,allow
            Deny from all
            Allow from 127.0.0.0/255.0.0.0 ::1/128
        </Directory>

 

        因为这些信息在使用moinwiki时没有用了。之后添加一行:

WSGIScriptAlias / /var/moinsource/moin.wsgi

        即指定出moin.wsgi的具体位置。

 

         2)如果使用多端口配置则按照以下步骤进行:

               I) 编辑 /etc/apache2/ports.cnf,在

               Listen 80

               这一行的下面添加一行要监听的其他端口,如8001:

               Listen 8001                              

               II) 编辑/etc/apache2/sites-enabled/000-default添加新的虚拟机信息

<VirtualHost *:8001>
	ServerAdmin zzgthk@localhost

	<Directory />
		Options FollowSymLinks
		AllowOverride None
	</Directory>
	
	WSGIScriptAlias / /var/moinsource/moin.wsgi

	ErrorLog /var/log/apache2/moin_error.log

	# Possible values include: debug, info, notice, warn, error, crit,
	# alert, emerg.
	LogLevel warn

	CustomLog /var/log/apache2/moin_access.log combined

</VirtualHost>

                

     g) 测试:

         重启apache使配置生效

         $sudo /etc/init.d/apache2 restart

         浏览器访问:http://127.0.0.1:8001即可看到了。点击左上角【登陆】,在进入的页面里注册刚才是superuser的账号即可,然后登陆之后就是管理员了,管理员可以安装语言包什么的。

 

 

 

 

 

 

 

 

 

 

==========未整理完的分割线===================================================================
其中/var/www/main.py就是提供wsgi的主程序
当然,一般程序都有静态文件支持,所以,您可能需要对某个目录下的文件跳过处理,如下

Alias /static   /var/www/static/

如此即可.最后加上目录设置即可,对于上面的例子,完整的虚拟主机配置如下

ServerAdmin admin@xxx.comDocumentRoot /var/wwwServerName xxx.comServerAlias www.xxx.comWSGIScriptAlias / /var/www/main.py/Alias /static   /var/www/static/AddType text/html .pyErrorLog /var/log/httpd/xxx_error.logCustomLog "|/usr/bin/cronolog /var/log/httpd/xxx_access_%Y%m%d.log" custom1Options Indexes FollowSymLinksAllowOverride AllOrder allow,denyAllow from all

这样就配置好了此站点的mod_wsgi支持.


install theme: 2 steps
静态文件css和img放到

/usr/local/lib/python2.6/dist-packages/MoinMoin/web/static/htdocs

and theme.py文件放置位置
/srv/share/moin/data/plugins/theme

 

 

小心的设置Python变量

当重新输入而不是剪切和粘贴操作时,应特别小心. 在wikiconfig.py中引用错误会导致失败. 其后的条目也是变量. 还有, 一些功能只有在wikiconfig.py或者farmconfig.py中开启他们对应的选项后才能正常使用.

moin.cgi找到, Moin不运行

如果你不得不将moin代码位置加入系统路径, 请确保指定这个路径是MoinMoin本身的上级, 这样MoinMoin这个词汇在导入时可以找到.

CSS文件不工作

丢失CSS样式是很常见的错误. 你的维基看起来很丑陋, 一点也不像现在这个漂亮的维基. 大多数情况下, 是因为你没有阅读建议而弄错了配置, 或者因为你比我们聪明,而试图自定义这些建议. :-)

解决问题很简单: 确保你的Apache Alias和ScriptAlias不是一样的. 这个Apache设置永远不能工作:

Alias /wiki/ "/prefix/share/moin/htdocs/"
ScriptAlias /wiki/ "/var/www/wiki/moin.cgi"

Alias用于静态文件: css, 图片等等. ScriptAlias用于将moin.cgi从url中隐藏. 你必须使用不同的值! 对于ScriptAlias, 或者Alias, 你可以使用任何值, 但是Alias必须匹配url_prefix的设置. 这是一个可以工作的例子(默认设置):

# Apache config
Alias /wiki/ "/prefix/share/moin/htdocs/"

# Wiki config
    url_prefix = '/wiki'



使用宏创建newpage

                 Home

      人员类         项目类               文章类
      |              |                   |
      |              |                   |
      +              +                   +
      人员列表(老师和学生2类)        项目列表             文章类表
      |              |                   |
      |              |                   |
      +              +                   +
      具体人员(模板)   具体项目(模板)     文章模板
      年   


<a id="userhome" class="nonexistent" title="admin @ Self" href="/admin">admin</a>
|
<a id="userprefs" rel="nofollow" href="/CategoryNews?action=userprefs">settings</a>
|
<a id="logout" rel="nofollow" href="/CategoryNews?action=logout&logout=logout">logout</a>






分享到:
评论

相关推荐

    MoinMoin配置手册

    安装MoinMoin引擎时,需要将压缩包解压后,通过Python的setup.py脚本来进行安装,指定安装路径,并记录安装日志。 安装完成后,MoinMoin的文件结构会包括存放Wiki页面、用户信息的数据目录,存放默认页面的underlay...

    moinmoin_latex for windows

    windows平台下好用的wiki,集成了latex的moinmoin,安装简易,懒人适用。 3分钟快速安装。

    MoinMoinWiki

    安装MoinMoin通常涉及下载最新版本(如moin-1.5.7),解压后配置设置文件`farmconfig.py`,包括数据库连接、URL路径、主题等。然后使用Python运行wiki服务器,如`python wiki.py`。配置完成后,可以通过Web浏览器...

    基于Python的MoinMoin.zip

    3. **安装依赖**:根据安装指南安装MoinMoin所需的Python模块和其他依赖项。 4. **配置wiki**:创建并编辑配置文件,指定数据存储位置、主题、语言设置等。 5. **启动wiki服务**:运行MoinMoin的服务器脚本,使其...

    moin-desktop-1.5.5a-1.exe

    最方便的moinmoin wiki,不用安装Python,apache

    moin moin 个人维基

    在本文中,我们将深入探讨moinmoin的核心特性、安装与配置过程,以及如何利用它来构建一个高效的个人维基系统。 1. **核心特性** - **易于使用**:moinmoin 提供了一个直观的网页编辑界面,用户无需编程知识即可...

    LoadSws:一个用于上传 sage 工作表的 moinmoin 操作插件

    负载开关一个用于上传 sage 工作表的 moinmoin 操作插件要使用它,您需要一个安装了 sagecell moinmoin 插件的 moinmoin wiki。 只需将其复制到您的插件/操作文件夹中即可。

    MoinWiki配置说明

    1. **安装**: 在终端执行`sudo python -m pip install MoinMoin`安装MoinMoin。 2. **验证安装**: 通过命令`python -c "import MoinMoin"`检查是否安装成功。如果没有任何错误信息输出,则表示安装成功。 #### 3. ...

    利用Python脚本在Nginx和uwsgi上部署MoinMoin的教程

    本文假定已经按照官方指引 Quick MoinMoin on CentOS 完成了 apache 和 mod_wsgi 之外的基础安装 安装 Nginx 默认情况下,CentOS 下没有 nginx 的源,需要自己手动添加,访问 ...

    ep_moinmoin_export

    ep_moinmoin_export 将当前打击垫内容导出为 MoinMoin Wiki ( ) 格式。 支持的默认格式和附加标签。 基于 乳胶出口 ...安装 npm install ep_moinmoin_export (from your etherpad-lite folder)

    MoinWiki配置说明[借鉴].pdf

    在Ubuntu 8.04上安装MoinMoin 1.9.3和Python 2.5.2时,可以按照默认路径安装这两个组件。 要安装MoinMoin桌面版,你需要: 1. 从官方网站下载最新版本的MoinMoin。 2. 解压缩到你选择的安装目录。 3. 进入解压后的...

    Python维基系统MoinMoir.zip

    安装MoinMoin通常包括以下几个步骤: 1. 下载最新版本的MoinMoin源码。 2. 配置Python环境,确保Python及其相关库(如Werkzeug、Pygments)已安装。 3. 解压并运行安装脚本,创建初始配置文件。 4. 配置web服务器,...

    moin-1.9.6

    安装过程相对简单,只需几步即可启动一个基本的wiki站点。对于更复杂的需求,如集成其他服务或自定义主题,可以通过配置文件和编写Python脚本来实现。 5. **社区与资源** MoinMoin拥有活跃的开发者和用户社区,...

    moin-1.9.3

    这个版本是moinmoin Wiki软件的1.9.3迭代,提供了一个强大的桌面版解决方案,让用户在本地环境下也能享受到Wiki系统的便利性。 一、moinmoin Wiki概述 moinmoin是一款功能丰富的Wiki系统,由Jan Gerken开发,并且...

    trello-to-text:将Trello列表序列化为文本

    trello2textTrello板列表输出到文本现在以适合MoinMoin Wiki的格式输出到控制台有用的链接: Trello API: : Trello API Python库: : 以JSON形式查看完整版面: : 简单的GET即可查看板卡JSON: : cards=open card_...

    WikiImageMapper-开源

    使用 WikiImageMapper,您可以轻松地为 MoinMoin Wiki 创建图像映射(安装了 ImageMap 解析器)。 该项目基于 JImageMapper。

    python入门资料

    - **MoinMoin**:一个基于Python的Wiki引擎。 - **pydict**:一个基于Linux的英汉词典应用程序。 - **在线游戏服务器**:许多在线游戏的后端服务器使用Python构建。 ### 二、第一个示例:Hello, World! - **...

Global site tag (gtag.js) - Google Analytics