在Windows XP下安装MoinMoin Wiki

需要的文件

安装目录约定

  • Apache - C:\www\Apache2
  • Python - C:\Python24
  • WikiHome - C:\www\Moin
  • WikiInstance - C:\www\Moin\mywiki

先安装Apache、Python。

MoinMoin的安装

在解压后的MoinMoin目录里运行


C:\Python24\python setup.py install --record=install.log

创建一个Wiki实例

cd C:\
md www\Moin
md www\Moin\mywiki
md www\Moin\mywiki\data
md www\Moin\mywiki\underlay

cd Python24\share\moin
xcopy data C:\www\Moin\mywiki\data /E
xcopy underlay C:\www\Moin\mywiki\underlay /E
copy config\*.* C:\www\Moin\mywiki\*.*
copy server\*.* C:\www\Moin\mywiki\*.*

修改C:\www\Moin\mywiki\wikiconfig.py

第1行改为 # -*- coding: utf-8 -*-

sitename = u'我的Wiki';
data_dir = r'C:/www/Moin/mywiki/data'
data_underlay_dir = r'C:/www/Moin/mywiki/underlay'

注意要保存为UTF-8格式的文件。

与Apache集成(CGI方式),修改C:\www\Moin\mywiki\moin.cgi

第1行改为:

#! C:/Python24/python

第16行改为:

sys.path.insert(0, r'C:/www/Moin/mywiki')

修改Apache的配置文件httpd.conf

Alias /wiki/ "C:/Python/share/moin/htdocs/"
ScriptAlias /mywiki "C:/www/Moin/mywiki/moin.cgi"

重启Apache,访问 http://localhost/mywiki/ 测试一下吧。

与Apache集成(使用mod_python)

安装mod_python后

修改Apache的配置文件httpd.conf

LoadModule python_module modules/mod_python.so

重启Apache,在logs/error.log里看到类似下面的信息则说明mod_python工作正常。

[Mon Mar 27 17:22:30 2006] [notice] mod_python: Creating 8 session mutexes
based on 0 max processes and 250 max threads.

修改httpd.conf

注释掉上面配置的CGI方式

#ScriptAlias /mywiki "/var/www/moin/mywiki/moin.cgi"

加入新的mod_python配置

SetHandler python-program
# Add the path of your wiki directory
PythonPath "[r'C:/www/Moin/mywiki'] + sys.path"
PythonHandler MoinMoin.request::RequestModPy.run

重启Apache,访问 http://localhost/mywiki 测试。

参考:

57 Replies to “在Windows XP下安装MoinMoin Wiki”

  1. 修改Apache的配置文件httpd.conf

    Alias /wiki/ “C:/Python/share/moin/htdocs/”
    ScriptAlias /mywiki “C:/www/Moin/mywiki/moin.cgi”
    是怎么修改的啊,不明白啊,具体点好不??!~!谢谢

  2. 我照做了啊,重启Apache,访问 http://localhost/mywiki/ 后,不中啊!~!~!
    找不到该页啊!~!`怎么回事啊!~!
    郁闷!~~~!我都弄了一天了,呵呵!!~
    本人太笨了,呵!~!大哥,指点一下吧!~

  3. 修改Apache的配置文件httpd.conf

    LoadModule python_module modules/mod_python.so

    怎么修改啊?也是直接加在httpd.conf的后面吗?如果是的话那应该加到Alias /wiki/ “C:/Python/share/moin/htdocs/”
    ScriptAlias /mywiki “C:/www/Moin/mywiki/moin.cgi”
    的后面吗?

  4. 是的,直接加在后面就可以。
    首先,你要保证mod_python.so存在于Apache安装目录里的modules目录。
    其次,把那三行配置加到httpd.conf的后面。
    最后,重启Apache,有任何错误都检查Apache的错误日志,在Apache安装目录下的logs目录,文件名是error.log

  5. [Wed Jul 12 08:44:54 2006] [error] [client 127.0.0.1] script not found or unable to stat: C:/www/Apache2/Apache2/htdocs/mywiki
    这是错误日志里的,好像是路径不对啊,
    mywiki不是在moin文件夹里的吗?怎么会显示以上信息啊?晕?!~

  6. mod_python.so存在于Apache安装目录里的modules目录?我就找不到这个文件啊!~!~
    2mod_python-3.2.5b的安装路径是???
    我把2mod_python-3.2.5装到
    python directorey:C:\Python24\
    installation directorey:C:\Python24\Lib\site-packages\
    我一加下面一句
    LoadModule python_module modules/mod_python.so
    就无法重启apache!~
    弹出对话框说The requested operation has failed!

  7. 安装mod_python的路径是不能改变的,它会自动的找到你的Python的安装目录,最后它还会询问你Apache的安装目录,弹出的文件夹选择对话框里已经找到了Apache的安装目录,所以一般情况下你不需要修改,接受就可以了。我怀疑你就是这个地方选错了,导致mod_python.so被放到别的目录里了。

  8. “安装mod_python最后它还会询问Apache的安装目录,弹出的文件夹选择对话框里已经找到了Apache的安装目录”,我这自动选的是C:\Program Files\Apache Group\Apache2,因为我以前默认装了一回,后来又卸了,按你说的装,是不是没删干净?我要怎么办?谢谢!~!~

  9. 把Apache卸载,用“添加/删除 程序”来卸载。
    注意,安装Apache时,如果你不使用默认的安装目录,比如:你选了C:\www\Apache2,那么,它将被安装到C:\www\Apache2\Apache2下面,也就是说它会自己建一个Apache2的目录。

    你说的“配置其他参数”指的是什么?

  10. “配置其他参数”指的是需要装IIS并配置他不?我觉得好像不用了,呵呵!!~!
    我还是装不成啊!~!我觉得我太笨了,不行了!~~~

  11. 不需要IIS,Apache就是Web服务器啊。

    你可以试试安装MoinMoin的Desktop edition,很简单,解开压缩包就行了:)

  12. 上面在Windows XP下安装MoinMoin Wiki 的方法能用吗?哪位兄弟亲自用过,而且成功了,有什么需要注意的地方没?

  13. 看起来,出现的问题并不少,可都是你(wolfg)解决的,我就装一次吧,能把你的QQ号放过来吗,解决问题效率高一些嘛?

  14. 我已经照着上面的方法做了,你要注意的地方我也做了,可为什么在于Apache安装目录里的modules目录中找不到mod_python.so。还有是否所有的配置文件修改后都要保存为UTF-8格式,谢谢,等待你的指导!

  15. wikiconfig.py要保存成UTF-8格式。
    你的Apache安装目录是什么?
    安装mod_python时指定的Apache目录是什么?

  16. 我已经将配置文件修改后都保存为UTF-8格式了,又装了一次mod_python,其中询问我Apache的安装目录,弹出的文件夹选择对话框里Apache的安装目录为“我的电脑”,我将它修改为了C:\www\Apache2 (看来了不能用你说的“一般情况”了,呵呵)

  17. 哦,关键的忘记说了,这一步算是过了吧!因为给你说的情况都一样。
    注释掉上面配置的CGI方式

    #ScriptAlias /mywiki “/var/www/moin/mywiki/moin.cgi”

    加入新的mod_python配置

    SetHandler python-program
    # Add the path of your wiki directory
    PythonPath “[r’C:/www/Moin/mywiki’] + sys.path”
    PythonHandler MoinMoin.request::RequestModPy.run

    后Apache又不能启动了,咋回事,大哥,

  18. 请分析我错误的操纵:
    在httpd.conf中,我将ScriptAlias /mywiki “C:/www/moin/mywiki/moin.cgi”这句前直接加#,然后将

    加入新的mod_python配置中这些
    SetHandler python-program
    ......
    PythonHandler MoinMoin.request::RequestModPy.run
    语句直接加在了直接加在httpd.conf的最后面。

  19. 抱歉!是我的文章里有误!有些文字被当作html标记给吃掉了。
    应该是

    <IfModule mod_python.c>
    <Location /mywiki>
    SetHandler python-program
    #Add the path of your wiki directory
    PythonPath “[r’C:/www/Moin/mywiki’] + sys.path”
    PythonHandler MoinMoin.request::RequestModPy.run
    </Location>
    </IfModule>
    Apache的错误,记得去看它的error日志。

  20. 没有什么可抱歉的,非常感谢你准时的告诉我。人总是在失误与挫折中学会长大的!呵呵(有点以小卖大了!)
    我已经照做了,Apache仍不能启动,是我放的位置不对吗,还是注释掉上面配置的CGI方式不对,error日志显示为:
    [Thu Jul 13 18:42:09 2006] [notice] Parent: Received restart signal -- Restarting the server.
    [Thu Jul 13 18:42:09 2006] [notice] Child 1428: Exit event signaled. Child process is ending.
    [Thu Jul 13 18:42:11 2006] [notice] Child 1428: Released the start mutex
    [Thu Jul 13 18:42:12 2006] [notice] Child 1428: Waiting for 250 worker threads to exit.
    [Thu Jul 13 18:42:12 2006] [notice] Child 1428: All worker threads have exited.
    [Thu Jul 13 18:42:14 2006] [notice] Child 1428: Child process is exiting

    等待你的再次指导与帮助!

  21. 注释就是用#。
    位置也不应该是问题。
    Apache的程序启动组里有个config test快捷方式,用来检查httpd.conf是否有语法错误。你试试。

  22. 是"开始"->"程序"->"Apache Http server 2.0.55"->"configure Apache server" ->"test configuration"
    来检查httpd.conf 吗?选择运行后,显示结果为"
    syntax error on line 963 of C:/www/Apache2/conf/httpd.conf:
    PythonPath takes one argument,python paht, specified in Python list syntax.
    Note the errors or messages above, and press the key to exit . 24...

  23. 在http中 963 行为 PythonPath “[r’C:/www/Moin/mywiki’] + sys.path”问题出在哪呢,我也检查了mywiki 的位置,并不错呀

  24. 在http中 963 行为
    PythonPath “[r’C:/www/Moin/mywiki’] + sys.path”问题出在哪呢,我也检查了mywiki 的位置,并不错呀

  25. PythonPath “[r’C:/www/Moin/mywiki’] + sys.path”
    看来又出在字符的问题上!
    双引号和单引号都必须是英文字符。
    PythonPath "[r'C:/www/Moin/mywiki'] + sys.path"

    奇怪!好像是WordPress把文章里的"和'都变成中文字符了。

  26. 字符我已经修改,Apache 可以正常启动,可当访问 http://localhost/mywiki/ 时,页面出现了这样的错误信息:
    Internal Server Error
    The server encountered an internal error or misconfiguration and was unable to complete your request.

    Please contact the server administrator, ilookforzwy@gmail.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.

    More information about this error may be available in the server error log.

    --------------------------------------------------------------------------------

    Apache/2.0.55 (Win32) mod_python/3.2.5b Python/2.4.2 Server at localhost Port 80

  27. 你说的正确,确实字符不对,我已经更改,可问题同原来一样,下面是error日志的内容:
    [Fri Jul 14 12:00:37 2006] [error] [client 127.0.0.1] PythonHandler MoinMoin.request::RequestModPy.run: Traceback (most recent call last):
    [Fri Jul 14 12:00:37 2006] [error] [client 127.0.0.1] PythonHandler MoinMoin.request::RequestModPy.run: File "C:\\Python24\\Lib\\site-packages\\mod_python\\apache.py", line 276, in HandlerDispatch\n newpath = eval(pathstring)
    [Fri Jul 14 12:00:37 2006] [error] [client 127.0.0.1] PythonHandler MoinMoin.request::RequestModPy.run: File "", line 1
    [Fri Jul 14 12:00:37 2006] [error] [client 127.0.0.1] PythonHandler MoinMoin.request::RequestModPy.run: [r\xe2\x80\x99C:/www/Moin/mywiki\xe2\x80\x99] + sys.path
    [Fri Jul 14 12:00:37 2006] [error] [client 127.0.0.1] PythonHandler MoinMoin.request::RequestModPy.run: ^
    [Fri Jul 14 12:00:37 2006] [error] [client 127.0.0.1] PythonHandler MoinMoin.request::RequestModPy.run: SyntaxError: invalid syntax
    是不是我的机器其它设置有问题,

  28. 我在页面刷新了一次,显示为:
    ConfigurationError
    ImportError: No module named wikiconfig

    Check that the file is in the same directory as the server script. If it is not, you must add the path of the directory where the file is located to the python path in the server script. See the comments at the top of the server script.

    Check that the configuration file name is either "wikiconfig.py" or the module name specified in the wikis list in farmconfig.py. Note that the module name does not include the ".py" suffix.

    If you want to report a bug, please save this page and attach it to your bug report.

    Show debugging information Report bug Visit MoinMoin wiki

  29. 我的wikiconfgil.py这个文件在C:\www\Moin\mywiki这个目录下,moin.cgi第16行显示为:
    sys.path.insert(0,r'c:/www/Moin/mywiki')
    为什么C:\www\Moin\mywiki与r'c:/www/Moin/mywiki中的反斜杠反向回相反

  30. 这样写在Python里是没有问题的。还是怀疑你的mod_python安装有问题。试试停掉Apache的服务,再重新安装一遍mod_python,确保modules目录里有mod_python.so

  31. 我已经安装成功了IP为http://211.67.101.217/mywiki,你看一下,结果是不是这样,怎么全是English。无论怎样非常非常的感激你---wolfg,你真的很棒!

  32. 太可怕了
    我机器重启一次后又不行了,我将mod_python卸了,在执行
    Alias /wiki/ “C:/Python/share/moin/htdocs/”
    ScriptAlias /mywiki “C:/www/Moin/mywiki/moin.cgi”

    重启Apache,访问 http://localhost/mywiki/ 测试一下就发生了原来一样的Internal Server Error....错误的
    error日志为:
    [Fri Jul 14 20:19:03 2006] [error] [client 127.0.0.1] File does not exist: C:/www/Apache2/htdocs/index.jsp
    [Fri Jul 14 20:19:33 2006] [error] [client 127.0.0.1] File does not exist: C:/www/Apache2/htdocs/index.jsp

  33. 又回到CGI方式了?
    那两条记录跟moinmoin无关。

    我访问了一下,好像可以了啊。不过,好像没有找到/wiki这个路径。
    Alias /wiki/ >C:/Python/share/moin/htdocs/>
    这句没生效。检查一下这个目录。

  34. 我又重装了一次,在第一次重启Apache,访问 http://localhost/mywiki/ 时发生了错误,网页页面显示为:
    ConfigurationError
    data_dir " C:\www\Moin\mywiki\underlay" does not exists, or has incorrect ownership or permissions.

    Make sure the directory and the subdirectory pages are owned by the web server and are readable, writable and executable by the web server user and group.

    It is recommended to use absolute paths and not relative paths. Check also the spelling of the directory name.

    If you want to report a bug, please save this page and attach it to your bug report
    在eeror日志中显示:
    [Sat Jul 15 10:05:14 2006] [error] [client 127.0.0.1] File does not exist: C:/www/Apache2/htdocs/index.jsp
    这应该怎样修改呢?等待...

  35. wikiconfig.py中检查这两句:
    data_dir = r’C:/www/Moin/mywiki/data’
    data_underlay_dir = r’C:/www/Moin/mywiki/underlay’

  36. ImportError: No module named wikiconfig

    Check that the file is in the same directory as the server script. If it is not, you must add the path of the directory where the file is located to the python path in the server script. See the comments at the top of the server script.

    Check that the configuration file name is either "wikiconfig.py" or the module name specified in the wikis list in farmconfig.py. Note that the module name does not include the ".py" suffix.

    If you want to report a bug, please save this page and attach it to your bug report.

    这是什么意思

    我采用CGI方式 与mod_python 都出现同样的问题, 是不是路径出错. 还是apache无法处理py文件

  37. to mrlong:
    如果用CGI方式,moin.cgi里要有这句

    sys.path.insert(0, r'C:/www/Moin/mywiki')

    指定wikiconfig.py的位置

    如果用mod_python方式,需要在httpd.conf里指定

    PythonPath "[r'C:/www/Moin/mywiki'] sys.path"

  38. [Wed Apr 04 15:17:35 2007] [error] [client 127.0.0.1] File does not exist: C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/wiki
    [Wed Apr 04 15:25:07 2007] [error] [client 127.0.0.1] File does not exist: C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/wiki
    [Wed Apr 04 15:25:10 2007] [error] [client 127.0.0.1] File does not exist: C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/wiki
    上面是我照wolfg的教程做完,error.log里的内容。
    老大,怎么回事阿?这个目录下会有什么?

  39. 我安装成为standalone的moinmoin,和原来的desktop版本一样,我遇到这样一个问题,当你编辑内容的时候,如果输入的内容很少,你保存,就不会出现问题。如果内容特别多,比如100多行存文字,你点击保存就会出现,The page cannot be displayed 。但是我添加的信息并没有丢失,也保存到网页里面了,如何避免出现这样一种情况,要是每次编辑和保存都有这中现象,太郁闷了。

  40. Traceback (most recent call last):
    File "g:\python\Lib\site-packages\MoinMoin\request.py", line 1875, in __init__
    RequestBase.__init__(self)
    File "g:\python\Lib\site-packages\MoinMoin\request.py", line 156, in __init__
    self._load_multi_cfg()
    File "g:\python\Lib\site-packages\MoinMoin\request.py", line 313, in _load_multi_cfg
    self.cfg = multiconfig.getConfig(self.url)
    File "g:\python\Lib\site-packages\MoinMoin\multiconfig.py", line 162, in getConfig
    config = _makeConfig(configName)
    File "g:\python\Lib\site-packages\MoinMoin\multiconfig.py", line 97, in _makeConfig
    module, mtime = _importConfigModule(name)
    File "g:\python\Lib\site-packages\MoinMoin\multiconfig.py", line 47, in _importConfigModule
    raise error.ConfigurationError(msg)
    ConfigurationError: SyntaxError: invalid syntax (wikiconfig.py, line 77)
    Traceback (most recent call last):
    File "g:\python\Lib\site-packages\MoinMoin\multiconfig.py", line 31, in _importConfigModule
    module = __import__(name, globals(), {})
    File "H:/Moin/mywiki\wikiconfig.py", line 77
    data_underlay_dir = r'H:\Moin\mywiki\underlay'
    ^
    SyntaxError: invalid syntax

    Additionally cgitb raised this exception:
    Traceback (most recent call last):
    File "g:\python\Lib\site-packages\MoinMoin\failure.py", line 143, in handle
    display=request.cfg.traceback_show,
    AttributeError: 'RequestModPy' object has no attribute 'cfg'

    恳请高手指点.这是怎么回事.我已经被装moinmoin搞了一个多星期了,还望高手帮我解决这个问题.
    谢谢!

  41. 我在apache的HTTPD.CONF中加的:
    LoadModule python_module modules/mod_python.so

    Alias /wiki "d:/php/Python/share/moin/htdocs/"
    #ScriptAlias /mywiki "d:/php/wwwroot/Moinwiki/mywiki/moin.cgi"

    SetHandler python-program
    PythonPath "[r'd:/php/wwwroot/Moinwiki/mywiki'] sys.path"
    PythonHandler MoinMoin.request::RequestModPy.run

    但仍然出错:httpd.exe: Syntax error on line 495 of D:/php/Apache2.2/conf/httpd.conf: Cannot load D:/php/Apache2.2/modules/mod_python.so into server: \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\xa3

    十分不解,是版本问题么?请帮助

  42. 我的ScriptAlias配置如下:
    ScriptAlias /mywiki "C:/Moin/mywiki/moin.cgi"
    始终有如下错误:
    client denied by server configuration: C:/Moin/mywiki/moin.cgi
    不知是什么原因?

  43. 博主,请问你的域名http://guoyong.org是怎么获取的,花生壳的专业用户?谢谢:)

  44. 博主,你好,我按照你的配置,访问http://127.0.0.1/mywiki的时候(用ie访问),出现以下的提示
    :Forbidden
    You don't have permission to access /mywiki on this server.
    请问知道怎么解决吗?
    yft809@163.com 不胜感激

Comments are closed.