У меня есть небольшой скрипт, который я пытаюсь портировать для работы с видео данными на iPhone / Blackberry / PalmPre и т. Д.
Код смехотворно прост:
$type = "video/3gpp"; /* get mimetype from db */
$fileid = "0001"; /* File path from db */
header( "Content-Length: " . filesize( $fileId ) );
header( "Content-type: $type" );
readfile( $fileId );
Он просто получает идентификатор файла на основе аргументов и использует readfile для отправки файла запрашивающей стороне.
Однако по какой-то странной причине это работает только один раз.
Если вы попытаетесь получить доступ к странице два раза подряд на iPhone и BlackBerry, она будет работать с первого раза. Затем либо в любое время после этого либо истечет время ожидания, либо он просто перестанет отвечать на запрос. Это поведение не то же самое на немобильном устройстве, оно отлично работает в Firefox / Safari / Chrome. Я совершенно уверен, что это не имеет ничего общего с кэшированием на немобильной стороне.
Есть идеи, почему это может произойти?