2015-09-19 2 views
0

J'ai déployé mon site Web fait avec flask à bluehost suivant le tutoriel here. A savoir, j'ai utilisé apache et fastcgi. Dans le mon fichier application.fcgi, je:Déployer Flask application avec FastCGI, racine de l'application inattendue

#! /home2/wandonye/python/python34/envs/flask/bin/python 
project = "vshare" 

from flup.server.fcgi import WSGIServer 
from vshare import create_app 
application = create_app() 

WSGIServer(application).run() 

Mais tout lien généré par url_for a une myapplication.fcgi supplémentaire en elle. Donc, au lieu d'avoir "www.mydomain.com/signin" j'ai eu "www.mydomain.com/myapplication.fcgi/signin".

On dirait que mon PROJECT_ROOT a changé.

J'avais l'habitude de déployer le site Web sur mon propre ordinateur avec Apache + uWSGI sans aucun problème.

Y at-il quelque chose de spécial à propos de fastcgi que je devrais garder à l'esprit? Comment puis-je supprimer le "myapplication.fcgi" indésirable dans mes liens.

Répondre

1

Je trouve finalement une solution here

Le problème est essentiel à fcgi, pas sur la configuration apache. Donc, la seule façon de contourner le problème est de changer la chaîne provenant d'url_for, de supprimer les "xxx.fcgi" non désirés