Я разрабатываю систему, в которой сервер будет передавать видео на устройство (iDevice или иным образом), а затем попросить пользователя оценить видео.Я решил использовать PostgreSQL для своей базы данных и позволить ему установить сервер Apache и PHP для работы (как показано здесь http://www.enterprisedb.com/products-services-training/pgdownload).
Однако, похоже, этот сервер не настроеночень похоже на обычную установку Apache / PHP. Когда iDevice пытается загрузить видео с сервера, iDevice выдает следующую ошибку:
Невозможно воспроизвести фильм - сервер настроен неправильно
Я провел некоторое исследование и узнал, что iDevices требует функциональности запроса диапазона байтов, поэтому я проверил журналы доступа моего сервера и обнаружил следующее:
xx.xx.xx.xx- - [08 / Mar / 2011: 11: 45: 56 -0700] "GET temp.mp4 HTTP / 1.1" 206 2
xx.xx.xx.xx - - [08 / Mar / 2011: 11: 45: 56 -0700] "GET temp.mp4 HTTP / 1.1" 200 17760579
(где "17760579" - точный размер в байтах конкретного файла)
Они должны выглядеть примерно так:
xx.xx.xx.xx - - [07 / Mar / 2011: 18: 04: 11 -0700] "GET temp.mp4 HTTP / 1.1" 206 2
xx.хх.xx.xx - - [07 / Mar / 2011: 18: 04: 11 -0700] "GET temp.mp4 HTTP / 1.1" 206 25947357
xx.xx.xx.xx - - [07 / Mar / 2011:18:04:11 -0700] "GET temp.mp4 HTTP / 1.1" 206 60637
xx.xx.xx.xx - - [07 / Mar / 2011: 18: 04: 11 -0700] "GET temp.mp4 HTTP / 1.1 "206 25880928
Итак, я знаю, что мой сервер неправильно обрабатывает некоторые запросы в диапазоне байтов.Однако использование curl для проверки этой функциональности возвращает правильный результат:
curl --range 0-99 http://url/temp.mp4 -o /dev/null
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 100 0 100 0 0 8574 0 --:--:-- --:--:-- --:--:-- 10000
Я убедился, что типы MIME для видео настроены правильно.
Я не уверен, куда идти отсюда.Что-то где-то неправильно настроено на этом сервере.
Обновление: Вот соответствующие номера версий:
Версия сервера: Apache / 2.2.16 (Unix)
Сервер собран:7 октября 2010 00: 26: 09
PHP версия 5.3.3
PostgreSQL 9.0.2 на x86_64-apple-darwin