Я пытаюсь отслеживать загрузки MP3-подкастов в iTunes. Я создал простой сайт codeignitor, который генерирует URL-адреса, такие как:
www.site.com / подкасты / скачать / [ID] .mp3
Сценарий извлекает идентификатор из URL-адреса, проверяет его наличие в БД - получает URL-адрес файлов и затем выполняет следующие действия:
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Sat, 01 Jan 2011 01:01:01 GMT");
header('Content-type: audio/mpeg');
header('Content-Disposition: attachment; filename=episode'.$id.'.mp3"');
readfile($this->podcast_model->get_strPodcastFileName());
Если вы нажмете URL-адрес в браузере, он будет работать, и файл начнет загружаться, но при добавлении 1 ссылки в iTunes он начнет говорить «Скачивает 0%», но не загружает?
1, на что нужно обратить внимание, это метод: $ this-> podcast_model-> get_strPodcastFileName () возвращает ссылку HTTP: //, а не ссылку на файл на сервере, также адрес HTTP не на том же сервере как сценарий. Хотя это работает при загрузке файлов через браузер, как я уже говорил выше.
У кого-нибудь есть идеи?
Спасибо
Джеймс