Trac desova para implantação nginx sem usar tracd

Eu estou tentando executar o Trac no nginx.

Existe uma solução simples que consiste em executar o servidor tracd, mas estou tentando evitar isso. Não suporta sockets unix.

Em vez disso, estou tentando usar o Spawning que deve ser capaz de iniciar qualquer aplicativo WSGI.

Mas eu não sei como usá-lo. Após o demostrativo , eu tenho meu diretório cgi-bin com trac.wsgi , mas não sei como iniciá-lo usando o Spawning.

Ele não aceita um nome de arquivo como argumento, eu tenho que fornecer o módulo e os nomes dos aplicativos, como spawning my_module.my_wsgi_app . Mas como faço isso com o trac.wsgi?

2

1 Respostas

Ao ler os documentos de Spawning, vi que ele recebe na linha de comando, como o primeiro parâmetro, o nome pontilhado do objeto WSGI do seu aplicativo. Especificamente para o Trac, o objeto WSGI é definido em trac.web.main.dispatch_request [1] . Tente passar isso para a desova.

Mas lembre-se que o Trac precisa de algumas variáveis ​​do ambiente para funcionar corretamente, para citar algumas: TRAC_ENV , apontando para o seu ambiente Trac e PYTHON_EGG_CACHE , onde o Python vai estratear qualquer ovo carregado Arquivo.

Como o Spawning não recebe um arquivo como o primeiro argumento, você não precisará do trac.wsgi .

Você pode tentar isso, correndo diretamente do seu shell.

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

Boa sorte!

2
adicionado
Obrigado Dalton!
adicionado o autor alexpirine, fonte