2

我正在尝试在 nginx 上运行 Trac。

有一个简单的解决方案,包括运行 tracd 服务器,但我试图避免这种情况。它不支持 unix 套接字。

相反,我正在尝试使用应该能够启动任何 WSGI 应用程序的 Spawning

但我不知道如何使用它。在deplyement之后,我有我的cgi-bin目录trac.wsgi,但我不知道如何使用 Spawning 启动它。

它不接受文件名作为参数,我必须提供模块和应用程序名称,例如spawning my_module.my_wsgi_app. 但是我该如何使用 trac.wsgi 呢?

4

1 回答 1

2

阅读 Spawning 文档,我看到它在命令行上接收到作为第一个参数的应用程序 WSGI 对象的虚线名称。特别是对于 Trac,WSGI 对象在trac.web.main.dispatch_request [1]中定义。尝试将其传递给 Spawning。

但是请记住,Trac 需要一些环境变量才能正确运行,仅举几例:TRAC_ENV,指向您的 Trac 环境和PYTHON_EGG_CACHE,Python 将在其中提取任何加载的 egg 文件。

由于 Spawning 不接收文件作为第一个参数,因此您不需要trac.wsgi.

你可以试试这个,直接从你的 shell 运行。

$ TRAC_ENV=/path/to/your/trac-env PYTHON_EGG_CACHE=/tmp/.egg-cache spawning trac.web.main.dispatch_request

祝你好运!

于 2011-11-13T03:35:33.620 回答