Я размещаю файл MP3 размером 2,9 МБ с Nginx. Когда я перехожу к его URL-адресу с помощью Chrome на Android, выполняются два запроса: один обычный запрос и один запрос двухбайтового диапазона.
Когда я копирую первый запрос как команду cURL и выполняю его в Mac OS X, он загружает файл целиком. Однако на Android загружается только 3,7 КБ до того, как будет выполнен запрос двухбайтового диапазона. Nginx послушно отвечает только двумя байтами данных, а элементы управления звуком, отображаемые в Chrome, остаются нефункциональными.
Я пробовал установить max_ranges 0
, отключить etags, gzip и т. Д. Я могу ' Кажется, Chrome не пытается заставить Chrome загрузить оставшуюся часть файла.
Первый запрос:
Я размещаю файл MP3 размером 2,9 МБ с Nginx. Когда я перехожу к его URL-адресу с помощью Chrome на Android, выполняются два запроса: один обычный запрос и один запрос двухбайтового диапазона. Когда я копирую первый запрос как команду cURL и выполняю его в Mac OS X, он загружает файл целиком. Однако на Android загружается только 3,7 КБ до того, как будет выполнен запрос двухбайтового диапазона. Nginx послушно отвечает только двумя байтами данных, а элементы управления звуком, отображаемые в Chrome, остаются нефункциональными. Я пробовал установить Первый запрос: Я размещаю файл MP3 размером 2,9 МБ с Nginx. Когда я перехожу к его URL-адресу с помощью Chrome на Android, выполняются два запроса: один обычный запрос и один запрос двухбайтового диапазона. Когда я копирую первый запрос как команду cURL и выполняю его в Mac OS X, он загружает файл целиком. Однако на Android загружается только 3,7 КБ до того, как будет выполнен запрос двухбайтового диапазона. Nginx послушно отвечает только двумя байтами данных, а элементы управления звуком, отображаемые в Chrome, остаются нефункциональными. Я пробовал установить Первый запрос: Я размещаю файл MP3 размером 2,9 МБ с Nginx. Когда я перехожу к его URL-адресу с помощью Chrome на Android, выполняются два запроса: один обычный запрос и один запрос двухбайтового диапазона. Когда я копирую первый запрос как команду cURL и выполняю его в Mac OS X, он загружает файл целиком. Однако на Android загружается только 3,7 КБ до того, как будет выполнен запрос двухбайтового диапазона. Nginx послушно отвечает только двумя байтами данных, а элементы управления звуком, отображаемые в Chrome, остаются нефункциональными. Я пробовал установить Первый запрос: Я размещаю файл MP3 размером 2,9 МБ с Nginx. Когда я перехожу к его URL-адресу с помощью Chrome на Android, выполняются два запроса: один обычный запрос и один запрос двухбайтового диапазона. Когда я копирую первый запрос как команду cURL и выполняю его в Mac OS X, он загружает файл целиком. Однако на Android загружается только 3,7 КБ до того, как будет выполнен запрос двухбайтового диапазона. Nginx послушно отвечает только двумя байтами данных, а элементы управления звуком, отображаемые в Chrome, остаются нефункциональными. Я пробовал установить Первый запрос: Когда я копирую первый запрос как команду cURL и выполняю его в Mac OS X, он загружает файл целиком. Однако на Android загружается только 3,7 КБ до того, как будет выполнен запрос двухбайтового диапазона. Nginx послушно отвечает только двумя байтами данных, а элементы управления звуком, отображаемые в Chrome, остаются нефункциональными. Я пробовал установить Первый запрос: Когда я копирую первый запрос как команду cURL и выполняю его в Mac OS X, он загружает файл целиком. Однако на Android загружается только 3,7 КБ до того, как будет выполнен запрос двухбайтового диапазона. Nginx послушно отвечает только двумя байтами данных, а элементы управления звуком, отображаемые в Chrome, остаются нефункциональными. Я пробовал установить Первый запрос: Я пробовал установить Первый запрос: Я пробовал установить Первый запрос: Ответ: Второй запрос: Ответ: GET /yt/test.mp3 HTTP / 1.1 один нормальный запрос и один запрос двухбайтового диапазона. Когда я копирую первый ...
max_ranges 0
, отключить etags, gzip и т. Д. Я могу ' Кажется, Chrome не пытается заставить Chrome загрузить оставшуюся часть файла. GET /yt/test.mp3 HTTP / 1.1 один нормальный запрос и один запрос двухбайтового диапазона. Когда я копирую первый ...
max_ranges 0
, отключить etags, gzip и т. Д. Я могу ' Кажется, Chrome не пытается заставить Chrome загрузить оставшуюся часть файла. GET /yt/test.mp3 HTTP / 1.1 Когда я копирую первый ...
max_ranges 0
, отключить etags, gzip и т. Д. Я могу ' Кажется, Chrome не пытается заставить Chrome загрузить оставшуюся часть файла. GET /yt/test.mp3 HTTP / 1.1 Когда я копирую первый ...
max_ranges 0
, отключить etags, gzip и т. Д. Я могу ' Кажется, Chrome не пытается заставить Chrome загрузить оставшуюся часть файла. GET /yt/test.mp3 HTTP / 1.1 Когда я перехожу к его URL-адресу с помощью Chrome на Android, выполняются два запроса: один обычный запрос и один запрос двухбайтового диапазона.
max_ranges 0
, отключить etags, gzip и т. Д. Я могу ' Кажется, Chrome не пытается заставить Chrome загрузить оставшуюся часть файла. GET /yt/test.mp3 HTTP / 1.1 Когда я перехожу к его URL-адресу с помощью Chrome на Android, выполняются два запроса: один обычный запрос и один запрос двухбайтового диапазона.
max_ranges 0
, отключить etags, gzip и т. Д. Я могу ' Кажется, Chrome не пытается заставить Chrome загрузить оставшуюся часть файла. GET /yt/test.mp3 HTTP / 1.1 он загружает файл целиком. Однако на Android загружается только 3,7 КБ до того, как будет выполнен запрос двухбайтового диапазона. Nginx послушно отвечает только двумя байтами данных, а элементы управления звуком, отображаемые в Chrome, остаются нефункциональными.
max_ranges 0
, отключить etags, gzip и т. Д. Я могу ' Кажется, Chrome не пытается заставить Chrome загрузить оставшуюся часть файла. GET /yt/test.mp3 HTTP / 1.1 он загружает файл целиком. Однако на Android загружается только 3,7 КБ до того, как будет выполнен запрос двухбайтового диапазона. Nginx послушно отвечает только двумя байтами данных, а элементы управления звуком, отображаемые в Chrome, остаются нефункциональными.
max_ranges 0
, отключить etags, gzip и т. Д. Я могу ' Кажется, Chrome не пытается заставить Chrome загрузить оставшуюся часть файла. GET /yt/test.mp3 HTTP / 1.1
Хост: xxx.xxx.xx.xxx
Подключение: keep-alive
Прагма: без кеширования
Cache-Control: без кеша
Принять: text / html, application / xhtml + xml, application / xml; q = 0.9, image / webp, * / *; q = 0.8
Небезопасные запросы на обновление: 1
Пользовательский агент: Mozilla / 5.0 (Linux; Android 6.0.1; Nexus 6P Build / MMB29Q) AppleWebKit / 537.36 (KHTML, как Gecko) Chrome / 48.0.2564.95 Mobile Safari / 537.36
Принятие кодировки: gzip, deflate, sdch
Accept-Language: en-US, en; q = 0,8
HTTP / 1.1 200 OK
Сервер: nginx
Дата: понедельник, 15 февраля 2016 г., 01:12:31 GMT
Тип содержимого: аудио / MPEG
Content-Length: 2891369
Последнее изменение: понедельник, 15 февраля 2016 г., 00:26:18 GMT
Подключение: keep-alive
ETag: "56c11b2a-2c1e69"
Параметры X-Frame: SAMEORIGIN
Параметры X-Content-Type: nosniff
X-XSS-Protection: 1; режим = блок
Accept-Ranges: байты
GET /yt/test.mp3 HTTP / 1.1
Хост: xxx.xxx.xx.xxx
Подключение: keep-alive
Прагма: без кеширования
Cache-Control: без кеша
Пользовательский агент: Mozilla / 5.0 (Linux; Android 6.0.1; Nexus 6P Build / MMB29Q) AppleWebKit / 537.36 (KHTML, как Gecko) Chrome / 48.0.2564.95 Mobile Safari / 537.36
Принять: * / *
Референт: https://xxx.xxx.xx.xxx/yt/test.mp3
Принятие кодировки: gzip, deflate, sdch
Accept-Language: en-US, en; q = 0,8
Диапазон: байты = 0-1
HTTP / 1.1 206 Частичное содержимое
Сервер: nginx
Дата: понедельник, 15 февраля 2016 г., 01:12:32 GMT
Тип содержимого: аудио / MPEG
Длина содержимого: 2
Последнее изменение: понедельник, 15 февраля 2016 г., 00:26:18 GMT
Подключение: keep-alive
ETag: "56c11b2a-2c1e69"
Параметры X-Frame: SAMEORIGIN
Параметры X-Content-Type: nosniff
X-XSS-Protection: 1; режим = блок
Content-Range: байты 0-1 / 2891369
Хорошо, почти наверняка проблема в том, что Chrome переключает загрузку и воспроизведение мультимедиа на Android MediaPlayer. В моей ситуации сертификаты SSL не были настроены правильно (поскольку мое доменное имя было временно ошибочно внесено в черный список моим реестром). Я мог бы вручную просмотреть предупреждения системы безопасности в Chrome, чтобы перейти на страницу, но я думаю, что как только MediaPlayer попытался взять на себя выборку ресурса, он отказался от ошибки сертификата.
Не уверен на 100%, что это была проблема , но мой домен снова в эксплуатации, и сейчас все работает. Я, вероятно, мог бы избавить себя от головной боли, отключив HTTPS, когда работал с необработанными IP-адресами.