2017-01-13 12 views
0

私はamazon ec2 linux instaceにpython flaskアプリケーションを実行しています。 のような私のpythonのアプリが見えます:Amazon EC2 Linuxインスタンスでスーパーバイザを実行中

supervisorctl -c supervisor.conf 
:私は、次のコマンドを実行すると
supervisor.conf

[program:flaskapplication] 
command = /home/ec2-user/myapp/venv/bin/python /home/ec2-user/myapp/application.py 
stdout_logfile = /var/log/watcher-stdout.log 
stdout_logfile_maxbytes = 10MB 
stdout_logfile_backups = 5 
stderr_logfile = /var/log/watcher-stderr.log 
stderr_logfile_maxbytes = 10MB 
stderr_logfile_backups = 5 

:上司の設定は次のように見える
application.py

#!flask/bin/python 

    from flask import Flask 

    application = Flask(__name__) 

    @application.route('/', methods=['GET', 'POST']) 
    def index(): 
     return '{"Output":"Hello World"}' 

    if __name__ == '__main__': 
     application.run(host='0.0.0.0', port=80, debug=False) 

私は以下の応答を得ます:

00:00:00 /home/ec2-user/myapp/venv/bin/python2.7 /home/ec2-user/myapp/venv/bin/supervisord -c supervisor.conf 

しかし、私がAmazonのインスタンスリンクをクリックすると、何も表示されません。私はサーバーが応答しないページを取得します。私は間違って何をしていますか?

答えて

0

私は、あなたはおそらく、エンドポイントが必要だと思う:

>>> @application.route('/say_hi', methods=['POST']) 
+0

この機能が動作するかどうか教えてください。 – Hng

0

私は、デフォルトではポート80がEC2のセキュリティグループ内の着信ポートとして設定されていないことに気づきました。検証済みの受信グループになるようにポート80を追加すると、アプリケーションを実行できました。

関連する問題