web-dev-qa-db-fra.com

IIS7 servant des fichiers .mp4, non lisibles sur les appareils iOS

J'ai ajouté le type MIME approprié au serveur, en m'assurant qu'il s'applique non seulement au site spécifique, mais même à tous les sites du serveur.

Le fichier est accessible et lisible dans mon navigateur (Chrome), mais lorsque vous essayez de le récupérer sur un iPhone, le mode de débogage me prévient que le "film ne peut pas être lu", mais sur iPad, il s'agit de "byte_range_error_message".

Je ne comprends vraiment pas pourquoi les appareils iOS ne chargent pas la vidéo. Je sais que ce ne sont pas les fichiers vidéo eux-mêmes parce que j'avais utilisé le même fichier sur un serveur différent (sur un package d'hébergement partagé).

Toute aide est appréciée! -Dan

7
Danomite

Etes-vous sûr d'avoir ajouté le type de mime correct au serveur? Lorsque je le teste ici localement, l'iPad semble sensible au type de mime utilisé dans la réponse. Je l'ai testé avec video/mp4 qui semble fonctionner correctement mais video/mpeg ne fonctionne pas.

4
Marco Miltenburg

Ce que vous devez rechercher pour savoir s'il existe ou non un problème avec la fonctionnalité de requête HTTP "plage d'octets" d'IIS7. Tout problème avec cela provoquerait l'erreur byte_range_error_message.

Par exemple, voici un correctif IIS 7.5 pour les demandes de plage d'octets qui posait des problèmes de transmission PDF en continu: http://kb2.Adobe.com/cps/807/cpsid_80780.html

Étant donné qu'IIS7 prend généralement en charge les demandes de plage d'octets par défaut, vous devrez peut-être rechercher d'autres éléments configurés sur votre serveur (pare-feu, filtres HTTP, caches, routeurs, etc.). J'ai récemment rencontré le même problème et écrit un article ici:

QuickTime BYTE_RANGE_ERROR_MESSAGE Erreur vidéo MP4

3
humbads

La plupart des problèmes que j'ai rencontrés lors de l'utilisation de mp4 (ou de n'importe quel média) sont dus au fait que j'avais oublié de mettre en liste blanche ces types de fichiers à partir de la compression du serveur Web.

3
Mike