uwsgi nginx web.py erro do servidor interal: aplicativo não encontrado

1

Nos meus sites nginx disponíveis / padrão, essa é a parte relevante do meu aplicativo:

    location /app/ {       
            include uwsgi_params;
            uwsgi_pass unix:///tmp/uwsgi.socket;
    }

Meu arquivo app.xml na pasta uwsgi / sites-available /:

<uwsgi>
    <socket>/tmp/uwsgi.socket</socket>
    <plugins>python</plugins>
    <chdir>/web/NetWeaveCustom</chdir>
    <module>index</module>
</uwsgi>

Finalmente, meu módulo /web/NetWeaveCustom/index.py é o seguinte:

import web

urls = (
    '/(.*)','index'
)

app = web.application(urls, globals()).wsgifunc()

class index:
    def GET(self,name):
        return name

Aqui está o meu log de erros do uwsgi:

[pid: 15963 | aplicativo: -1 | req: -1/15] 192.168.1.98 () {42 vars em 686 bytes} [domingo, 30 de dezembro, 18:51:37, 2012] GET / app / = > gerou 48 bytes em 0 ms (HTTP / 1.1 500) 2 cabeçalhos em 63 bytes (0 ativa o núcleo 0) [pid: 15963 | app: -1 | req: -1/16] 192.168.1.98 () {42 vars em 686 bytes} [dom dez 30 18:51:54 2012] GET / app / = > gerou 48 bytes em 0 ms (HTTP / 1.1 500) 2 cabeçalhos em 63 bytes (0 ativa o núcleo 0) [pid: 15964 | aplicativo: -1 | req: -1/17] 192.168.1.98 () {42 vars em 686 bytes} [domingo, 30 de dezembro, 18:51:55, 2012] GET / app / = > gerou 48 bytes em 0 ms (HTTP / 1.1 500) 2 cabeçalhos em 63 bytes (0 ativa o núcleo 0) [pid: 15963 | app: -1 | req: -1/18] 192.168.1.98 () {42 vars em 686 bytes} [domingo, 30 de dezembro, 18:51:55, 2012] GET / app / = > gerou 48 bytes em 0 ms (HTTP / 1.1 500) 2 cabeçalhos em 63 bytes (0 ativa o núcleo 0)

Quando cheguei ao meu servidor / aplicativo / pasta, recebo o seguinte erro:

uWSGI Error:
Python application not found.

Não há erros relatados no log de erros do nginx.

O estranho é que isso estava funcionando muito bem até que eu decidi reiniciar o serviço uwsgi. Assim que eu fiz esse erro aconteceu.

Alguma sugestão sobre o que está errado aqui?

    
por eatonphil 31.12.2012 / 01:08

1 resposta

2

O uWSGI procura o 'aplicativo' que pode ser chamado, enquanto você está definindo um 'aplicativo'.

Use

<module>index:app</module>

ou adicione

<callable>app</callable>
    
por 31.12.2012 / 08:59