2016-04-20 16 views
0

この後、tutorialの後、ec2 unbuntuインスタンスでレールアプリケーションを設定し、nginx WebサーバーとPumaアプリサーバーを実行してデプロイしましたしかし、私の資産はどれも現れていません。私は、Devise gemの基本機能(ログアウトなど)にルーティングエラーが発生しています。 chrome開発ツールコンソールには、コンパイルされたapplication.cssファイルとapplication.jsファイルの404エラーが表示されます。rails 4.2 capistrano 3 unbuntu nginx puma、ルーティングエラー/アセットが表示されない

私はインスタンスにSSHと私のアプリがあるフォルダに移動した場合、私は公共/資産の下にたくさんのファイルを見ることができるので、資産があると思います。私はカピストラーノログを確認した場合にも、私はラインbundle exec rake assets:precompileを見つけることができ、そのためのステータスが成功しています。私はproduction.rbファイルに入れて、config.serve_static_files = true

に変更しても、まだ資産がないようなことを試しました。私は、Webサーバー、アプリケーションサーバー、およびawsのインスタンスが互いにどのように相互作用しているかを実際には理解していないため、何らかのルーティングエラーがあることが最大の疑いであると考えています。誰でもこれをデバッグするのに正しい方向で私を指摘できますか?特定の設定ファイルを見る必要がある場合は、下記にコメントしてください。

+0

あなたは展開にカピストラーノを使用するための特定の必要性を持っていますか? Railsの場合ElasticBeanstalkを使用したAWSデプロイのアプリは、事実を劇的に簡素化します。 – hephalump

+0

iはカピストラーノのワークフローが好きでも、それはカピストラーノを使用して展開タスクをカスタマイズするための比較的簡単だという事実が好きです。また、私はただ、一般的にサーバを設定する方法を理解したいのではなく、常に十分なフェアプラットフォーム – ChaiTea

+0

に頼ります。 ElasticBeanstalkを使用すると、デプロイメントタスクをカスタマイズすることもでき、必要に応じてコンテナを設定することができます。 – hephalump

答えて

0

[OK]を、それは私がしなければならなかったすべては[my_app_name] /共有/ configにある共有フォルダに私のアプリのために地元のレポからsecrets.ymlをコピーで判明します。だから私のアプリは秘密鍵の基盤を探す場所を知らなかった。私はまだ、なぜ務めから資産を妨げるsecret.ymlを持っていないに混乱しているが、

...

+0

secrets.ymlを見ずに誰もあなたに話すことができません。アセットがS3バケットに格納されている場合は、アクセスするためにIAMユーザーの資格情報を提供する必要があります。一つの理由かもしれない。二つのリマインダー:1)あなたは、サーバー上、およびNOT secrets.ymlファイル内の環境変数での生産の資格情報を格納する必要があり、かつ2)あなたが誤って自分の秘密をプッシュしないように.gitignoreにsecrets.ymlを追加することを忘れないでくださいレポに – hephalump

関連する問題