3

AmazonのCLoudfront CDNを私たちのアプリまで接続しました。レールでのステージングとproduction.rbファイルでCDNをステージングとプロダクションのENVsでCloudFront、Rails、Jammitを使用する方法

、それが取ったすべてれました:

起こっ
http://cdn02.mysite.com/assets/application.js 

config.action_controller.asset_host = Proc.new { |source, request| 
    if request.ssl? 
     "https://cfIDhere.cloudfront.net" 
    else 
     # Pick a random CDN 
     "http://cdn0#{source.hash % 4}.mysite.com" 
    end 
    } 

挑戦今はこれを呼び出して、両方の生産とステージングの両方がENVSということですとても狂った問題を作り出す。プロダクトとステージングの両方でCDNを動作させるための最良の方法は何ですか?

私はこのような何かを行うことができるのが大好きです:

http://cdn02.mysite.com/assets/production/application.js 
http://cdn02.mysite.com/assets/staging/application.js 

誰もがこれでの経験がありますか?ありがとう

+0

http:// cdn0#{source.hash%4} .mysite.com /#{Rails.env} "または" http://#{Rails.env} .cdn0#{source.hash%4} .mysite.com "'?それ以外の場合は、パスをカスタマイズするために、コアの 'javascript_include_tag'関連コードを掘り下げなければなりません。 –

+0

私はそれをやり終えた。私が見つけた問題は、それがCSSを壊すことでした。 cssにurl(/ images ...)のようなイメージがある場合、それは今無効です...アイデア? – AnApprentice

答えて

1

私はあなたのCDNを環境ごとに分けます。ですから、CDN {\ d \ d}はプロダクションになり、app-stage-cdn {\ d \ d}はステージングになります。

関連する問題