Sto provando a configurare Cloudfront per la mia app heroku. The documentation sembra mancare di essere indipendente.Heroku + Rails4.2: Configurazione Cloudfront
qui sono i passi che ho seguito:
1. Setup Cloudfront in AWS console
2. Added cloudfront domain name to production.rb `config.action_controller.asset_host = 'XXXX.cloudfront.net'`
3. Set `config.assets.compile = true` in production.rb
4. Verified AWS_SECRET_ACCESS_KEY is correct in heroku config
5. I have added `gem 'rails_12factor', group: :production`
Nessuno dei beni caricare più. Qualche passaggio che mi manca nel setup?
Update1:
Nel debugger Chrome l'attività è correttamente richiesto da CloudFront da questo URL: http://XXXXX.cloudfront.net/assets/application-22c7c249df1a24541d86603b0715eefe.css
Tuttavia nell'intestazione della richiesta vedere un Status Code:302 Moved Temporarily
. Mi chiedo se ho un ciclo di reindirizzamento e come posso eseguire il debug.
Update2
Grazie a tutti per i suggerimenti. Alcune ulteriori informazioni:
- Quando provo a scaricare il bene della mia app, ottengo un redirect alla home page sul browser, ma utilizza ricciolo io sono in grado di ottenere il bene. ex: curl 'http: //www.myapp.com/assets/application-c9a778bb55ad4152d956fd34fe6f7839.css'
- L'app non usa SSL. Tuttavia, ho ancora impostato il criterio del protocollo di origine in Match Viewer come da suggerimenti di @ Omar
- Ho provato a scaricare l'asset dalla mia app sul browser e sono in grado di accedere alle risorse. ex: 'http: //www.myapp.com/assets/application-c9a778bb55ad4152d956fd34fe6f7839.css' Tuttavia, provare ad accedere alle risorse direttamente su cloudfront (d1ax5oefcdtdki.cloudfront.net/assets/application-c9a778bb55ad4152d956fd34fe6f7839.css) reindirizza a myapp .com
- Screenshots per DS CloudFront:
https://www.dropbox.com/s/bkg480d4it6zl2r/Screenshot%202015-12-06%2014.01.28.png?dl=0
http://glui.me/?i=7ah73hffrhvmpt7/2015-12-06_at_2.02_PM.png/
https://www.dropbox.com/s/dd4wwgm3md8w7qn/Screenshot%202015-12-06%2014.05.20.png?dl=0
Una cosa che ho fatto è stato impostato in modo da utilizzare il protocollo URL relativi, come '// xxx.cloudfront.net'. Potrebbe essere necessario espirare anche i beni facendo urtare il numero di versione della risorsa in 'assets.rb' se si utilizza Rails 4. – CWitty
Hai provato a recuperare le risorse da S3 direttamente solo per vedere cosa succede? – Vidya
@Vidya Non sto usando S3 per la memorizzazione delle risorse. Le sue poche immagini e css, JS nella cartella degli asset Rails al momento. Devo impostare qualcosa in S3? – codeObserver