実現したいこと
Flaskを公開する
発生している問題
localhostにアクセスしFlaskの動作確認はできたのですがFlaskの公開ができません。
/etc/apache2/sites-available/flask.conf
conf
1<VirtualHost *:5000> 2 ServerName example.jp:5000 //質問に際してexample.jpに変更 3 4 WSGIDaemonProcess flask_app user=www-data group=www-data threads=5 5 WSGIScriptAlias / /var/www/flask/flask_app.wsgi 6 7 <Directory /var/www/flask> 8 WSGIProcessGroup flask_app 9 WSGIApplicationGroup %{GLOBAL} 10 Order deny,allow 11 Allow from all 12 </Directory> 13</VirtualHost> 14 15<VirtualHost *:80> 16 ServerName example.jp //質問に際してexample.jpに変更 17 DocumentRoot /var/www/html 18 ErrorLog ${APACHE_LOG_DIR}/html.error.log 19 CustomLog ${APACHE_LOG_DIR}/html.access.log combined 20 LogLevel warn 21</VirtualHost> 22
80番ポートではサイトを動かしています。
https://teratail.com/questions/238780
これは前回の私の質問ですがlocalhostでのアクセスについてですがソースコードはそのままです。
外部公開にあたって他にも何か手順を踏む必要があるのでしょうか。
よろしくお願いします。
###補足① 環境
OS:ubuntu 18.04.3 LTS
Python 3.6.9
Apache/2.4.29 (Ubuntu)
サーバーにはSSHで接続しています。
補足② 関連するソースコード
app.py
/var/www/flask/app.py
Python
1from flask import Flask 2 3app = Flask(__name__) 4 5@app.route("/") 6def index(): 7 return "Hello World!" 8 9if __name__ == '__main__': 10 app.run(debug=False, host='0.0.0.0', port=5000)
flask_app.wsgi
/var/www/flask/flask_app.wsgi
wsgi
1import os,sys 2 3sys.path.insert(0, os.path.abspath(os.path.dirname(__file__))) 4 5from app import app as application
/etc/apache2/ports.conf
にListen 5000
も追加しました。
また、/var/log/apache2/error.log
を参照しエラーを確認しまししたがエラーは確認されませんでした。
80番ポートで外部からアクセスすると通常通りflask.confの下のvirtualhostで指定した任意のディレクトリに行きサイトが動作(flaskなどはしていない静的なHTML)しますが5000番ポートでアクセスすると「このサイトにアクセスできませんexample.jp からの応答時間が長すぎます。」と返されてしまいます。
回答1件
あなたの回答
tips
プレビュー