Нерест Trac для развертывания nginx без использования tracd - PullRequest
2 голосов
/ 13 ноября 2011

Я пытаюсь запустить Trac на nginx.

Существует простое решение, состоящее в запуске сервера tracd, но я пытаюсь избежать этого.Он не поддерживает сокеты Unix.

Вместо этого я пытаюсь использовать Spawning , который должен запускать любое приложение WSGI.

Но я незнать, как его использовать.После deplyement у меня есть каталог cgi-bin с trac.wsgi в нем, но я не знаю, как запустить его с помощью Spawning.

Он не принимает имя файлав качестве аргумента я должен предоставить модуль и имена приложений, например spawning my_module.my_wsgi_app.Но как мне сделать это с trac.wsgi?

1 Ответ

2 голосов
/ 13 ноября 2011

Чтение документов порождения Я видел, что он получает в командной строке в качестве первого параметра пунктирное имя объекта WSGI вашего приложения.В частности, для Trac объект WSGI определен как trac.web.main.dispatch_request [1] .Попробуйте передать это Spawning.

Но помните, что для правильной работы Trac нужны некоторые переменные окружения, например: TRAC_ENV, указывающий на вашу среду Trac и PYTHON_EGG_CACHE, где Python будет выделять любыефайл загруженного яйца.

Поскольку Spawning не получает файл в качестве первого аргумента, вам не понадобится trac.wsgi.

Вы можете попробовать это, запустив прямо из вашей оболочки.

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

Удачи!

...