2017-02-27 3 views
2

J'essaie d'utiliser WSGI sur Windows Server pour exécuter une application flacon simple. Je continue à courir dans l'erreur suivante:Flask Erreur avec wsgi_handler

Error occurred while reading WSGI handler: Traceback (most recent call last): File "c:\inetpub\wwwroot\test_site\wfastcgi.py", line 711, in main env, handler = read_wsgi_handler(response.physical_path) File "c:\inetpub\wwwroot\test_site\wfastcgi.py", line 568, in read_wsgi_handler return env, get_wsgi_handler(handler_name) File "c:\inetpub\wwwroot\test_site\wfastcgi.py", line 551, in get_wsgi_handler raise ValueError('"%s" could not be imported' % handler_name) ValueError: "app.app" could not be imported StdOut: StdErr

Pour mon site j'ai configuré un gestionnaire pour appeler le FastCGIModule de Microsoft Web Platform Installer

Mon fichier application se présente comme tel:

from flask import Flask, request, jsonify 
from analyzers import analyzer 
import write_log 

app = Flask(__name__) 

@app.route("/") 
def test(): 
    return "Test load" 

@app.route('/analyze', methods=['POST']) 
def parse(): 
    text = request.json['text'] 
    name = request.json['name'] 
    model = request.json['model'] 
    try: 
     convert_flag = request.json['convert_flag'] 
    except KeyError: 
     convert_flag = False 
    results= analyzer(text, name, model, convert_dose=convert_flag) 
    write_log.write_log(text, name, model, results) 
    return jsonify(results) 

if __name__ == "__main__": 
    app.run() 

Si Je commente l'importation personnalisée de mon script d'analyseur et de mon script write_log avec la méthode POST que les choses vont exécuter, donc je sais que je dois jouer quelque chose là-haut.

Quelqu'un a-t-il des suggestions?

Merci d'avance.

Paul

+0

que vous avez pu obtenir un répondre à cette question? merci – labheshr

+0

@labheshr Désolé je n'étais pas. Jamais été capable de le comprendre. – PaulGlass

Répondre

0

J'ai eu le même problème et le problème était avec une bibliothèque tiers. Quelle est l'origine de votre problème est certainement quelque chose de différent, mais voici quelque chose que je l'ai fait pour identifier mon problème et peut vous aider ainsi:

  1. Ouvrir wfastcgi.py
  2. Situer la méthode get_wsgi_handler (probablement en ligne 519)
  3. Il y a une try/except dans une déclaration while module_name
  4. Ajouter raise à la fin du bloc except et enregistrez le fichier, comme ceci:

    except ImportError: 
        ... 
        raise 
    
  5. Accédez à votre URL de site nouveau et vérifiez vos journaux, ils maintenant doivent être plus détaillées sur ce qui a causé la ImportError et vous diriger dans la bonne direction pour résoudre le problème