CSSとイメージを展開した後にプロジェクトをサーバーに配備しています - 動作しますが、JSは機能しません - 404 HTMLとpublic /資産 - 不一致。生産現場のJSファイルのRails 3.1アセットパイプラインの指紋が間違っている
In HTML: application-6851a5d9167871936c32da723dca0f23.js
In public/assets: application-95ecf5bab4b7984abe8c1c23b72a7679.js
CSSとイメージを展開した後にプロジェクトをサーバーに配備しています - 動作しますが、JSは機能しません - 404 HTMLとpublic /資産 - 不一致。生産現場のJSファイルのRails 3.1アセットパイプラインの指紋が間違っている
In HTML: application-6851a5d9167871936c32da723dca0f23.js
In public/assets: application-95ecf5bab4b7984abe8c1c23b72a7679.js
'rake assets:clean assets:precompile'を実行しましたか?
また、GITを使用している場合は、古いバージョンのアセットも「git rm」する必要があります。作業環境(例えばHeroku)を押してプロダクション環境を更新する場合、他のバージョン管理システムと同様の作業を行う必要があります。
あなたの開発環境では、資産はソースベースから直接フェッチされるため、変更した場合、再度プリコンパイルする必要はありません(開発中に時間を節約できます)。しかし、そのために資産をかなり簡単に見つけ出すことができます。
アプリを再起動すると、私のために修正されました。
など。アプリケーションのルートディレクトリに:
touch tmp/restart.txt
またはカピストラーノ3のdeploy.rb中:
namespace :deploy do
desc 'Restart application'
task :restart do
on roles(:app) do
within release_path do
execute :touch, 'tmp/restart.txt'
end
end
end
after 'deploy:publishing', 'deploy:restart'
end
あなたは(直接それを編集して)あなたの質問にいくつかの情報を追加することができます。HTML手段は何?あなたのソースコードでRailsによって生成されたURLを意味しますか?私はそれが開発で動作すると思われる。あなたは資産を得るために何をしましたか? 'rake assets:precompile'?設定で何か変更しましたか?それは新しいレールアプリケーションか移行されたものですか? – mliebelt
はい、私はソースコードでRailsによって生成されたURLを意味します。はい、開発では動作しますが、実動では動作しません。レーキ資産を使って資産を取得します:プリコンパイル。その新しいレールアプリ –
私は自分のアプリケーションでチェックしたところ、ハッシュはHTMLコードとファイルパスで同じです。ファイルごとに指紋を含む 'manifest.yml'を確認しましたか?実稼働環境ではどのサーバーを使用しますか? – mliebelt