2016-04-19 10 views
-2

アセット/静的ファイルを使用して簡単なフラスコサイトを作成しました。それをEC2にアップロードしました。サーバーはテンプレートを正しくレンダリングしますが、静的ファイルは絶対に利用できません。AWS elasticbeanはFlask静的アセットを処理しません

私はSSH経由で接続し、すべてのバージョンが設定されているかどうかを確認しました。アプリケーションルートへのパスは/opt/python/current/app/で、CSSファイル/opt/python/current/app/mysite/static/css/stylesheet.cssへのフルパスです。

対応する別名は、Webコンソールで指定し、Apacheのwsgi.confに転送: Alias /static/ /opt/python/current/app/mysite/static <Directory /opt/python/current/app/mysite/static> Order allow,deny Allow from all </Directory> http://xxx.xxx.us-west-2.elasticbeanstalk.com/static/css/stylesheet.css)を少なくともアルCSSファイルを取得しようと - ファイルが整っているかどうかを404

チェックを持って、静的フォルダを指し正しい場所:上記のディレクトリセクションにOptions + Indexesを追加し、URLを開き、http://xxx.xxx.us-west-2.elasticbeanstalk.com/static/、私の静的フォルダの内容を参照してください:css, js, lib

もう一度チェックしてください:1.cssを静的ルートに追加し、ブラウザでディレクトリを開き、自分のファイルが表示されていることを確認してください。このファイルをクリックしようとしています - 再度404を得ました!

追加の設定もドットファイルも追加されませんでした。すべての動的ページが正常に取得されます。

EC2で静的ファイルを処理する方法は?

+0

'Elastic Beanstalkで= EC2'はあなたのセキュリティグループをチェックしていますか!? – Snuggert

+0

@Snuggertセキュリティグループは、Webサーバーインスタンス全体に適用されます。私。私がセキュリティグループを逃した場合、私はサーバーからの回答をまったく受け取っていませんでした。私の問題は静的コンテンツにのみ関連しています。 –

答えて

0

ソリューションは、シンプルでダムだった:/static/エイリアスが定義された構成セクションでは、私は最後のスラッシュ逃しました。誤った

mysite/static

正しい:mysite/static/

0

フラスコは(root_folder)/staticへのルートを提供しており、あなたは(root_folder)/mysite/staticのルートにあなたのapacheの設定を指しています。フラスコはこの場所のルートを見つけることができません。

ソリューション:

  1. (root_folder)に変更フラスコの静的フォルダ
  2. 移動現在の静的フォルダを
+0

いいえ、私が記述したように、私がディレクトリリストを有効にしたとき、私はすべての静的なファイル構造を見ることができます。これは、ディレクトリが正しい場所を指すことを意味します。また、フラスコアプリケーションは 'mysite'フォルダ内で正しく動作します。 –

関連する問題