質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
uWSGI

uWSGIは、PythonでWebサービスを動かすアプリケーションサーバの一つです。WSGI(Web Server Gateway Interface)アプリケーションコンテナの一種で、WSGIに則ったDjangoやFlaskなどで動かすことができます。

Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

Q&A

解決済

1回答

2360閲覧

uWSGIとNgixの連携がうまくいかない

_dana

総合スコア15

uWSGI

uWSGIは、PythonでWebサービスを動かすアプリケーションサーバの一つです。WSGI(Web Server Gateway Interface)アプリケーションコンテナの一種で、WSGIに則ったDjangoやFlaskなどで動かすことができます。

Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

0グッド

0クリップ

投稿2020/10/14 08:59

FlaskアプリケーションをuWSGI + Nginxで動かそうとしています
AWSのLinux2で動かしています

参照記事1
参照記事2
参照記事3
この辺の記事を参考にやっていますがuwsgiとnginxを同時に起動していても、ポート80にアクセスするとnginxの__Welcome to nginx on Amazon Linux!__のページが表示されてしまいます

どなたか原因、解決策をご教授いただけないでしょうか

uwsgi単体での起動も試したのですが、EC2インスタンスのポート8000にはアクセスできないのでprintでシェルに文字列を表示することでしか確認できていません
なのでuwsgi側にそもそもの問題がある可能性はありますが低いかなと

以下ファイル等になります

appini

1# uwsgi側の設定ファイル 2[uwsgi] 3module = app 4callable = app 5master = true 6processes = 1 7socket = ///tmp/uwsgi.sock 8chmod-socket = 666 9vacuum = true 10die-on-term = true 11chdir = /var/www/flask-test

testconf

1# nginx側の設定ファイル 2server { 3 listen 80; 4 5 location / { 6 include uwsgi_params; 7 uwsgi_pass unix:///tmp/uwsgi.sock; 8 } 9}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hentaiman

2020/10/14 15:07

> EC2インスタンスのポート8000にはアクセスできない 普通に8000ポート開放して確認してみてはどうですか?
_dana

2020/10/14 16:03 編集

ありがとうございます やってみたところ internal server error ということでたくさんエラーができました^^; ですが、uwsgiとnginxの連携がうまくいく設定になっていればnginxで起動したポートにアクセスしても internal server error が出てしまうのではないでしょうか
hentaiman

2020/10/14 16:26

そうですね 設定したconfは有効ですか?追加したconfが使われずにdefaultconfだけが使われているの可能性はないですか?
_dana

2020/10/15 03:21

confが有効かどうかはどうしたらわかりますか?
hentaiman

2020/10/15 07:33

対象のconfでアクセスログの出力を設定して出力されるかどうか
_dana

2020/10/15 07:34

ありがとうございます。 無事解決いたしました
guest

回答1

0

自己解決

ソケットではなくプロキシを用いて接続するとうまく行きました
nginxの設定はnginx.confに直書きしました

ini

1[uwsgi] 2module = app 3callable = app 4master = true 5processes = 1 6http = 127.0.0.1:8000 7vacuum = true 8die-on-term = true 9chdir = /var/www/flask-test

nginx

1location / { 2 include uwsgi_params; 3 proxy_pass http://127.0.0.1:8000; 4}

投稿2020/10/15 07:31

_dana

総合スコア15

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問