プロダクションサーバですべてを実行したら、nginxまたはapacheはFlaskの代わりに静的アセットを提供するはずです。しかし、私はFlaskの問題と、サブディレクトリのファイルへのリクエストをstatic
に実行しています。Flask:静的リターンのサブディレクトリへのリクエスト500
正しく/static/test.css
リターンの要求が、/static/test/test.css
の要求500を返し、この例外がスローされます。そのエラーに検索のビットは、誰かがリクエストでreturn
を忘れてしまった、主に簡単な例を返し
Traceback (most recent call last):
File "/home/tim/shadowcraft-ui-python/venv/lib/python3.5/site-packages/flask/app.py", line 1991, in wsgi_app
response = self.make_response(self.handle_exception(e))
File "/home/tim/shadowcraft-ui-python/venv/lib/python3.5/site-packages/flask/app.py", line 1567, in handle_exception
reraise(exc_type, exc_value, tb)
File "/home/tim/shadowcraft-ui-python/venv/lib/python3.5/site-packages/flask/_compat.py", line 33, in reraise
raise value
File "/home/tim/shadowcraft-ui-python/venv/lib/python3.5/site-packages/flask/app.py", line 1988, in wsgi_app
response = self.full_dispatch_request()
File "/home/tim/shadowcraft-ui-python/venv/lib/python3.5/site-packages/flask/app.py", line 1642, in full_dispatch_request
response = self.make_response(rv)
File "/home/tim/shadowcraft-ui-python/venv/lib/python3.5/site-packages/flask/app.py", line 1731, in make_response
raise ValueError('View function did not return a response')
ValueError: View function did not return a response
ハンドラが必要ですが、アセットを直接リクエストする場合は何もありません。テンプレート内でurl_for
を使用してサブディレクトリからファイルを要求しようとする場合も同じことが行われます。
正気のチェックと同じように、この '/ static/test/test.css'ファイルは実際に存在しますか? – YellowShark
はい、正しい権限を持っています。 – timwoj
私はいくつかのコードを共有する必要があると思います。私はPython 3.5.2で空のFlaskプロジェクトを作成し、 'static/test/test.css'ファイルを作りました。うまくいきました。私のapp.pyファイルの内容は、文字通り 'フラスコ輸入Flask/Flask(__ name __)。run()'であり、それ以上のものはありません。 – YellowShark