2011-11-13 3 views
2

nginxでTracを実行しようとしています。tracdを使用しないでnginx配備のためにTracを生成する

tracdサーバーの実行で構成される単純な解決策がありますが、私はそれを避けようとしています。 UNIXソケットはサポートしていません。

代わりに、WSGIアプリケーションを起動できるはずのSpawningを使用しようとしています。

しかし、私はそれを使用する方法がわかりません。 deplyementの後にはと私のcgi-binディレクトリがありますが、Spawningを使って起動する方法はわかりません。

ファイル名を引数として受け入れないため、モジュール名とアプリケーション名(spawning my_module.my_wsgi_appなど)を指定する必要があります。しかし、私はtrac.wsgiでそれをどうやってやるのですか?

答えて

2

Spawningドキュメントの読み込み最初のパラメータとして、アプリケーションのWSGIオブジェクトののという名前のコマンドラインで受け取ることがわかりました。特にTracの場合、WSGIオブジェクトはtrac.web.main.dispatch_request[1]に定義されています。これをSpawningに渡してみてください。

しかし、TracがTrac Environmentを指し示すTRAC_ENVと、PYTHON_EGG_CACHEを呼び出すことを覚えておいてください。Pythonは読み込まれたeggファイルをエスケートします。

最初の引数としてファイルを受け取らないため、trac.wsgiは必要ありません。

これは、シェルから直接実行することができます。

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

幸運を祈る!

+0

ありがとうダルトン! – alexpirine

関連する問題