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

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

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

Gunicorn (Green Unicorn)は、Rubyのunicornをベースに開発されたUNIX向けのPython製HTTPサーバです。他のライブラリとの依存関係がないため、容易にインストールして使用できます。

Flask

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

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Q&A

0回答

554閲覧

flaskをgunicornで起動するとリダイレクトがエラーになる

partech

総合スコア4

Gunicorn

Gunicorn (Green Unicorn)は、Rubyのunicornをベースに開発されたUNIX向けのPython製HTTPサーバです。他のライブラリとの依存関係がないため、容易にインストールして使用できます。

Flask

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

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

0グッド

0クリップ

投稿2019/12/17 16:15

環境:centos7 + apache + gunicorn + flask

gunicorn app:appでflaskを起動するとhttp://example.com/が正常に表示されます。
しかし、例えば、index.htmlの<a href="/enter">をブラウザでクリックしてページ遷移しようとすると、http://localhost:8000/loginにアクセスされてしまいエラーとなります。

flask側では、下記のような感じです。(一部簡略化しています。)

flask

1@app.route('/enter', methods=['GET']) 2def login() 3 return redirect('/maypage')

redirectのところが、render_templateでテンプレートを返すだけの処理であれば正常に処理がされますが、POSTでrenderさせないといけないときなどは、すべてエラーになってしまいます。

どなたか解決のヒントいただけますと幸いです。。
宜しくお願い致します。

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

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

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

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

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

nico25

2019/12/17 17:17

"redirect('/maypage')" が login_required になっていませんか?
partech

2019/12/18 05:05 編集

ご質問ありがとうございます! login_requiredにはなっておりませんでした。 自分なりに進展させてみて、 ① /etc/httpd/conf/httpd.confファイルに下記を追加。 ProxyPass / http://000.00.00.000:8000/ (厳密には、ProxyPass / http://localhost:8000/からの修正) ② gunicorn実行時は、 GUNICORN_CMD_ARGS="--bind=000.00.00.000:8000 --workers=3" gunicorn app:app で実行 すると、ページ遷移やリダイレクトはエラーにならず使用上は問題なくなりましたが、 flask 側でredirectされる処理の時に、ブラウザ上のURLが 独自ドメインではなく、IPアドレス(000.00.00.000:8000のような)に変更されてしまい、気持ちの悪い感じです、、
nico25

2019/12/18 11:46

意味のわからない挙動をされると、怖いですよね.. とりあえず、復旧されたようでよかったです :)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問