1

我已经使用 apache/mod_wsgi(无 SSL)部署了 trac(最好,因为我面临的 CGI 问题是性能),并且它在没有 SVN 集成的情况下工作正常。但我实际上需要 SVN,所以当我配置存储库路径(即:repository_dir = c:/projects/svn/my_project)时,我什至无法让我的项目 TRAC 甚至打开它的任何页面。

在 Mozilla Firefox 上显示白页,在 MS-IE 上显示“无法显示页面”错误,就好像服务器“超时”一样。

我已经尝试使用 mod_python (3.3.1) 并且发生了完全相同的问题。虽然它适用于 CGI。

我也尝试过禁用 SVN 身份验证,认为这可能是身份验证冲突(我使用的是 Apache Basic Auth)。

环境:

  • 赢 2000 服务器 SP 4;
  • 阿帕奇 2.2.10;
  • 蟒蛇2.5.2;
  • mod_wsgi 修订版 1018 2.3,py25_apache22;
  • 跟踪 0.12dev;
  • 颠覆 1.5.3。

配置文件:

  • Apache httpd.conf 摘录:
WSGIScriptAlias /trac "c:/projects/apache/trac.wsgi"

<Directory c:/projects/apache>
  WSGIApplicationGroup %{GLOBAL}
  Order deny,allow
  Allow from all
</Directory>
  • 跟踪.wsgi:
import sys
sys.stdout = sys.stderr

import os
os.environ['TRAC_ENV_PARENT_DIR'] = 'c:/projects/trac'
os.environ['PYTHON_EGG_CACHE'] = 'c:/projects/eggs'

import trac.web.main

application = trac.web.main.dispatch_request
  • trac.ini 摘录:
repository_type = svn
repository_dir = c:/projects/svn/my_project

有任何想法吗???

4

2 回答 2

1

解决了!

我已将 Apache 和 Python 使用的 SVN 的 dll 版本与此处可用的版本对齐:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID = 8100 还按照此处提到的 SVN 说明进行操作:http:// trac.edgewall.org/wiki/TracInstall#VersionControlSystem

一步步:

  1. 将我的 Subversion 更新到 v1.5.5,Apache 2.2.x 的 Win32 二进制文件(可在http://subversion.tigris.org/files/documents/15/44589/svn-win32-1.5.5.zip获得)。

    1. 删除了我的旧颠覆并扩展了新的颠覆;
    2. 把新的放在系统路径上,这样Apache就可以看到SVN dll;
    3. 将“mod_dav_svn.so”和“mod_authz_svn.so”复制到 Apache 的模块目录。
  2. 更新了 Win32 上 Subversion 的 Python 2.5 绑定(可在http://subversion.tigris.org/files/documents/15/44591/svn-win32-1.5.5_py.zip获得)。

    1. 将文件从 '\libsvn' 复制到 'c:\Python25\Lib...\libsvn
    2. 按照说明将 libsvn/*.dll 文件重命名为 .pyd(因为 python 2.5 不再读取 dll);
  3. 更新了 Win32 的 Python 2.5 绑定安装程序(可在http://subversion.tigris.org/files/documents/15/44597/svn-python-1.5.5.win32-py2.5.exe获得)。

    1. 安装了“exe”;
  4. 重新启动窗口。

只是为了记录……它并没有完全按照这个顺序发生,也不是和平发生的。我整天都在为不同的 .zips/.exes/.dlls/.sos 苦苦挣扎。因此,在放弃该解决方案之前,请务必在所有涉及的部分中对齐 SVN。

结果:它奏效了,我的 Trac/SVN 性能显着提高。

于 2009-03-04T21:17:58.497 回答
1

实际上,在修改了我的 subversion 存储库后,我遇到了更多问题。它再次停止工作,行为相同。所以我尝试“重新同步”(因为有一条日志消息与缓存的不同版本有关)但什么也没有。

所以我卸载了所有东西并重新安装了它(包括Apache),按照上面的一步一步加:

  • 在我的项目上运行重新同步(trac-admin c:\projects\myproject resync);
  • 从 'c:\Python25\Lib\site...\libsvn' 中删除由 'Python 2.5 bindings installer for Win32' 安装的 subversion 的 dll,并从 'c:\svn-win32-1.5.5\bin' 复制 subversion 的 dll 到 over它。

它有效(到目前为止)。

我会通知任何更改。

于 2009-03-05T17:56:58.720 回答