2012-12-02 31 views
0

我使用Libsyn播放幾個播客,這是一個我從未有過的新問題。我發佈了自己的RSS源,並通過我自己的服務器重定向音頻文件請求,以便我可以自己做日誌記錄。 iTunes拒絕提交Feed,並提示信息「Feed有問題,您的插曲託管在不支持字節範圍請求的服務器上,啓用字節範圍請求並再次嘗試提交。」沒有iTunes的「字節範圍」錯誤,將MP3請求重定向到Libsyn?

很明顯,Libsyn DOES支持字節範圍請求,所以問題似乎是我重定向請求的方式。這是對我的播客現有一貫致力於:

$id = 12345; // (the episode number) 
$url = 'http://traffic.libsyn.com/myshow/myfile-'.$id.'.mp3'; 
header("Location: $url"); 

所以我嘗試添加一些頭說服我其實也支持字節範圍請求的iTunes。我已經嘗試過的這些每一個組合,我能想到的:

$id = 12345; // (the episode number) 
$filesize = 12345678; // (the size of my file on Libsyn) 
$url = 'http://traffic.libsyn.com/myshow/myfile-'.$id.'.mp3'; 
header('HTTP/1.1 206 Partial Content'); 
header('Content-Type: audio/x-mp3'); 
header('Accept-Ranges: bytes'); 
header("Content-Length: $filesize"); 
header("Location: $url"); 

我仍然得到錯誤試圖展示提交到iTunes,和我的想法。有什麼建議麼?

回答

1

您不能返回使單個HTTP響應既成功(206)又重定向(位置標題,意味着30x)。您需要自己提供內容,或者放棄登錄。

+0

我發現了這個問題,這不是我想的。重定向工作正常,但我有一個錯字,正在尋找來自錯誤域名的文件。 –

+0

哦......嗯,這是真的,我想範圍請求只會在目標主機上工作。但是,您仍然應該從響應中刪除「Location」以外的所有標題,因爲它們在重定向上毫無意義。 – duskwuff

1

我鼓勵很多其他人發佈了關於這個問題的內容,尋找不相關的拼寫錯誤以及像我的問題那樣愚蠢。 iTunes返回的錯誤並不一定意味着它所說的。