Не удалось загрузить файл в браузер Android.

Мы искали причину этой проблемы в течение нескольких дней, поэтому, возможно, кто-то что-то понимает.

Мы используем php для принудительной загрузки файлов (в данном случае mp3) с сервера в браузеры ПК и устройства Android. Код отлично работает на ПК. На ВСЕХ устройствах Android, которые мы протестировали, запрос GET вызовет диспетчер загрузки, чтобы попытаться получить файл, но Android не будет уважать присоединенное имя файла, вместо этого отобразит имя скрипта, и загрузка файла в конечном итоге завершится неудачно с следующее сообщение:

Ошибка загрузки — Ошибка подключения к данным

Попытка загрузить файл с тестового сайта, работающего на моем компьютере с ТОЧНЫМ кодом, работает правильно.

Вчера я создал новый сервер с точно такой же операционной системой (CentOS) и версией PHP (5.5.16), поместил свой php-скрипт в это окно и повторил попытку с моего Android-устройства, и он отлично работал. Опять, ТОЧНО тот же самый php-код.

Все признаки указывают на то, что ответ — проблема конфигурации сервера (неправильная). Я не настроил этот сервер и не имею root-доступа, поэтому мои возможности тестирования были ограничены попыткой заставить мои серверы-песочницы «сломаться» и начать воспроизводить то же самое поведение.

Я бы включил PHP-код, но у меня есть 2 отдельные среды, где код работает нормально. Если я запускаю инструменты dev в своем настольном браузере в рабочих и нерабочих средах и сравниваю ответы, они идентичны тому, что я могу сказать. Заголовки идентичны, а полезные данные имеют одинаковый размер. Что-то заставляет Android не любить ответ от одного сервера, а нравится ответ от другого.

Некоторое понимание или, по крайней мере, место для начала было бы полезно. Единственные две вещи, которые являются Различными между моими средами являются:

  • Рабочая среда песочницы отвечает HTTP 1.0 и SSL
    Сертификат от Rapid SSL. Среда песочницы будет работать с включенным SSL или без него.

  • Неработающие промежуточные / производственные среды отвечают HTTP
    1.1, а сертификат SSL является сертификатом подстановочного знака от COMODO.

Я хотел бы быть более полезным, но я исчерпал обычные, очевидные вопросы, которые респонденты задали бы здесь. Если вам нужна дополнительная информация или вы хотите увидеть дампы phpinfo, я могу предоставить.

Спасибо заранее за любую помощь.

РЕДАКТИРОВАТЬ — запрос Android отображается в журналах доступа и нет ошибок. С точки зрения журнала сервера все выглядит идеально.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector