Domanda

Io sono istituito Flask, un pitone web di micro-quadro sotto Apache con mod_wsgi.

L'applicazione funziona benissimo tranne pitone confparser. Questo getta nessun errore:

parser = ConfigParser.ConfigParser()
parser.read('snati.con')

Ma quando aggiungo:

parser.get('database', 'user')

Ho errore interno del server , senza nulla in error.log di Apache

Ho provato anche:

file = open("sample.txt")

Lo stesso risultato.

Ci devono essere alcuni problemi di configurazione, ma non riesco a trovarlo.

I miei sguardi apache conf come:

WSGIRestrictStdout Off

<VirtualHost *:80>
    ServerName my.com

    WSGIDaemonProcess myapp user=me group=me threads=5

    WSGIScriptAlias / /home/me/www/myapp.wsgi

    <Directory /home/me/www/myapp >
        WSGIProcessGroup myapp
        WSGIApplicationGroup %{GLOBAL}
        Order deny,allow
        Allow from all
    </Directory>
</VirtualHost>

Il mio app.wsgi

#active the python virtualenv for this application
activate_this = '/home/gilles/www/snati/env/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))


import sys
sys.path.insert(0, '/home/gilles/www/snati/src')
sys.stdout = sys.stderr

from app import app as application

Che cosa può eventualmente essere sbagliato e perché non posso ottenere l'errore nel log di Apache?

È stato utile?

Soluzione

Usa percorsi assoluti ai file nel codice Python, non percorsi relativi.

La directory di lavoro corrente del processo non sarà in cui il codice delle applicazioni e dei file è.

non si è visto errori come Flask non li registrerà se non in modalità di debug. applicazione di configurazione per catturare loro e-mail o in altro modo registrare loro in qualche modo. Non mi ricordo quali opzioni Flask ha per quest'ultimo.

Altri suggerimenti

Aggiungere il percorso a voi apache file di impostazione con una variabile di casa

WSGIDaemonProcess myapp user=me group=me threads=5 home=/path/to/your/directory

questo cambia la directory di lavoro per il processo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top