Que signifie vraiment le code http 206 (contenu partiel)?

13

Je crée une page (en utilisant video.js, si cela importe) qui contient les lecteurs pour un nombre raisonnablement élevé de vidéos - cliquez sur un bouton sur une miniature de l'image et un lecteur modal s'ouvre, lisant la vidéo. Fonctionne bien; pas grave. Mon serveur est Apache 2.2.15, fwiw.

La question: lorsque je regarde les journaux de mon serveur, je vois des entrées pour chacune des vidéos avec un code HTTP de 206 (contenu partiel), comme:

GET /videos/a_video.mp4 HTTP/1.1" 206 1130496 "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.73.11 (KHTML, like Gecko) Version/7.0.1 Safari/537.73.11"

Je ne sais pas exactement ce que ces entrées signifient, exactement. Lorsque cette page a été chargée, 1,1 Mo de contenu a-t-il vraiment été transféré sur le réseau au client, ou s'agit-il uniquement d'informations que le client est censé utiliser lorsque / si le fichier est réellement demandé par l'utilisateur? Décharger tous ces trucs sur l'utilisateur / client serait une chose assez cochonne à faire pour la bande passante de quelqu'un (le long de mon site), en particulier sur une connexion mobile. (Sur la base d'une analyse de journal supplémentaire, il semble que ces bits soient vraiment poussés, mais vérifier cela avec d'autres personnes plus compétentes semble sûrement la bonne chose à faire ...)

Jim Miller
la source
"plus de choses" est probablement important. Vous devriez probablement l'inclure.
Michael Hampton
Pardon; voir les modifications. C'est juste moi qui regarde la page dans Mac / Safari, bien que je ne vois pas de grandes différences de comportement avec les autres navigateurs.
Jim Miller

Réponses:

15

Cela me semble parfaitement normal. La plupart des lecteurs vidéo (et même audio!) Demandent de petits morceaux du fichier à la fois, puis en demandent plus plus tard, car l'utilisateur lit la vidéo. 206 n'est envoyé que lorsque l'agent utilisateur demande spécifiquement une plage spécifique du fichier, plutôt que le fichier entier.

Michael Hampton
la source
Je pense que c'est normal aussi; mon point / question est de savoir si la première partie de la vidéo a été envoyée au client dans le cadre du chargement de la page. Êtes-vous en train de dire que c'est le cas?
Jim Miller
1
Apache n'enregistre pas quelle partie du fichier l'utilisateur a demandée, mais il reste que l'utilisateur a fait une demande partielle. Ainsi, quelque chose sur votre page oblige le client à charger une partie de la vidéo.
Michael Hampton
J'ai compris - Il s'agit très probablement du lecteur vidéo qui s'initialise. Merci!
Jim Miller