2017-08-25 9 views
0

私のフラスコは奇妙なリダイレクト動作を示しています。私は何が間違っているのか分からない。私html files作業罰金のすべては、私が'/' routeとして、それらをロードする場合は、しかし、リダイレクトが正しく動作しませんし、私は、次のエラーメッセージが表示されます。Gunicornとnginxを使用したフラスコのリダイレクト

ERR_NAME_NOT_RESOLVED 
DNS address could not be found 

エラーは、以下の4つの路線で再現することができます。

@app.route('/') 
def index(): 
    return 'The index page' 

@app.route('/projects/') 
def projects(): 
    return 'The project page' 

@app.route('/about') 
def about(): 
    return 'The about page' 

@app.route('/main') 
def main(): 
    return 'The main page' 

ブラウザにサーバーIPだけを入力すると、1は動作しません。

ありません2は次のように動作します:IP /についてではなく、このIP /について/

ません4 doesnのが好き:IP /プロジェクト/しかし、このIPをliekない/このような

んが3つの作品を投影していませんまったく動かない!どうして?

私は代理人としてnginxとrunnung gunicornです。事前に多くの感謝!

答えて

0

/abc/および/abcは、ルーティングの観点から2つの異なるルートです。しかし、あなたはいつでもフラスコにそれを伝えることができます、それはあなたが望むものではありません。あなたは、アプリケーションのオブジェクト

app.url_map.strict_slashes = False 

あなたのコード私たちの世界的な変更を行うことができます。また、strict_slashes=False

@app.route('/projects/', strict_slashes=False) 
def projects(): 
    return 'The project page' 

今すぐ#4が原因で作業することはできません使用して、このような行動のrouteベースのマッピングを行うことができますメソッド名。だから、

@app.route('/main') 
def main_route(): 
    return 'The main page' 

@app.route('/main') 
def main(): 
    return 'The main page' 

を変更

関連する問題