2017-02-20 8 views
0

Apacheサーバにレールアプリをデプロイしようとしています。私もjavascript_include_tagでカスタムスクリプトをロードしようとしていますRailsプロダクションサーバで資産が禁止されています

<script src="/assets/jquery.js" type="text/javascript"></script> 

:私はアプリの資産フォルダにjqueryのにアクセスしようとしています。私のウェブブラウザのjavascriptコンソールを見ると、これらのスクリプトにアクセスしようとすると、サーバーは403の禁じられたエラーコードで応答することがわかります。

my/var/www // public/assetsフォルダをchmod 775しようとしましたが、これで問題は解決されませんでした。 rake資産の両方を実行しようとしました。つまり、プリコンパイルし、production.rbを変更して静的ファイルを提供し、config.assets.compileをtrueに設定しました。

+0

ように、私のproduction.rbを変更「プリコンパイルされたアセットが見逃された場合にアセットパイプラインにフォールバックする」ことを許可します。これは、アセットをあらかじめコンパイルしていても、アプリケーション構成の何かが間違っていることを示しています。このようにしてオーバーライドするだけで、症状を隠すだけで、前進するほど多くの問題を引き起こす可能性があります。セキュリティの意味合いはもちろんですが。 私はあなたがあなたのconfig /初期化子/ assets.rbで見てください、あなたは既に –

答えて

0

この作品、なぜ私はわからないんだけど、私は自分のアプリケーションディレクトリに

rm -rf public/assets 

を実行し、あなたがアプリケーションを上書きしているので、それが動作する

config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present? 
config.assets.compile = true 
0

あなたの/config/environments/production.rbに熱心な負荷が有効になっていることを確認してください。

+0

を使用している場合、すべてのものが同様に適切に存在し、セットアップであることを確認しますassets/jquery.js "となります。私は、レールアプリがどのようにセットアップされているかに応じて、/最初はいくつかのことを壊しています。 – genghiskhan

+0

は「src属性の最初から/を削除してください有効になっているレール5 –

関連する問題