Причина не загрузки файла заключается в том, что Safari отправляет заголовок диапазона с запросом и результатом запроса Apache. должно быть 200, если за прокси-сервером, или 206 без прокси.
После кэширования Cloudflare выдаст запрос 206.
HTTP-серверы, на которых размещаются медиафайлы для iOS, должны поддерживать запросы диапазона байтов, который iOS использует для выполнения произвольного доступа при воспроизведении мультимедиа. (Поддержка байтового диапазона также известна как поддержка диапазона содержимого или частичного диапазона.) Большинство, но не все, серверы HTTP 1.1 уже поддерживают запросы байтового диапазона.
Если вы этого не сделали, Если вы уверены, что ваш медиасервер поддерживает запросы диапазона байтов, вы можете открыть приложение «Терминал» и использовать инструмент командной строки Curl для загрузки короткого сегмента из файла на сервере:
Пример команды:
curl -I --range 0–99 http://example.com/test.mp4
Тот же файл загружается, если веб-сервер за прокси-сервером Cloudflare стоит litespeed или openlitespeed.
если я отключу прокси-сервер Cloudflare, видео будет загружаться идеально с кодом состояния 206 на Apache, а также litespeed/openlitespeed.
Я сделал следующие вещи, но не работал с Apache и не работал с litespeed:
- отключить mod_deflate в Apache
- Обход кеша для файла mp4
СпасибоЛаксман
Подробнее здесь: https://stackoverflow.com/questions/783 ... s-code-206