Refinery CMS 3.0 byte-range requests support

40 views
Skip to first unread message

Anton Khaybulaev

unread,
Feb 13, 2017, 11:49:43 PM2/13/17
to Refinery CMS

Hello guys, I use RefineryCMS 3.0 (rails 4.2.0) with refinerycms-podcast 1.0 gem (which is designed to be used with iTunes Connect) on Heroku. I store my media on AWS S3 and use AWS Cloudfront CDN.

I want to use iTunes Connect to distribute my podcasts, but I encounter the error “Your episodes are hosted on a server which does not support byte-range requests” on the iTunes side. In fact this means that the podcast files don’t available for partial content downloading (if you do GET request for this file with byte-range param you get HTTP answer “200 OK” instead of “206 Partial Content”).

I am 99% sure that the problem is with RefineryCMS, since AWS S3 supports byte-range requests, as well as AWS CloudFront. I tested it, for example if you request the file directly from S3 you have 206 answer, but if you request it through RefineryCMS like this (example.com/system/images/W1siZ...JdXQ/Inspiring%20figures-01.png?sha=8afd0a0ae73e58a5), you got 200 answer.

So, basically the file is the same, but if it’s requested through RefineryCMS, you get 200 instead of 206 and iTunes doesn’t accept this.

Could you clarify what am I doing wrong? Thank you.

jor...@neuralle.com

unread,
Feb 16, 2017, 8:46:47 PM2/16/17
to Refinery CMS
If anyone knows, would also like to see the answer to this..

Anita Graham

unread,
Feb 17, 2017, 11:48:13 PM2/17/17
to Refinery CMS

Maybe something to do with dragonfly: The request you show will pass through dragonfly.  They have a goodle group too: https://groups.google.com/forum/#!forum/dragonfly-users. I notice you're using a png file.  Is that the correct file type?

Anton Khaybulaev

unread,
Feb 19, 2017, 10:15:53 PM2/19/17
to Refinery CMS
Thank you Anita, Dragonfly's #remote_url function worked like a charm to fetch the original S3 url (as you recommended in Gitter).
Reply all
Reply to author
Forward
0 new messages