Est HTTP/1.0 toujours en cours d'utilisation?
Dire qu'on est d'écrire un serveur HTTP/client, comment est-il important de soutenir HTTP/1.0? Est-il encore utilisé n'importe où aujourd'hui?
Edit: je suis moins soucieux de l'utilité/l'importance de HTTP/1.0, plutôt la quantité de logiciel qui en fait l'utilise pour les non-interne (tests unitaires étant usage interne, par exemple) à des fins dans le monde réel (les navigateurs, les robots, les smartphones/stupidphones, etc...).
- JWZ écrit un simple 1.0-client-à-1.1-serveur proxy qui pourraient être d'intérêt pour vous: jwz.org/hacks/http10proxy.pl
Vous devez vous connecter pour publier un commentaire.
wget
utilise le protocole HTTP/1.0, et il est encore relativement populaire (bien qu'il ne prennent en charge quelques HTTP/1.1 caractéristiques comme laHost:
en-tête, ce qui est nécessaire pour accéder à toutes les virtual hosts).curl
utilise le protocole HTTP 1.1 par défaut. Voir curl.haxx.se/docs/manpage.htmlÀ compter de 2016, on pourrait penser que l'importance du déclin encore plus depuis la 1.1 a été introduit en 1999, c'est à peu près 17 ans.
J'ai vérifié 7,727,198 lignes de logs pour voir quel pourcentage je obtenir de
HTTP/1.0
etHTTP/1.1
:De ce que je peux voir, la plupart des
HTTP/1.0
sont des robots. J'ai donc essayé de supprimer les entrées qui étaient de toute évidence de tels (c'est à dire de l'Agent, y compris le mot "robot", slurp, etc.)Donc il semble que le montant de l'utilisateur final coincé avec
HTTP/1.0
est très limité aujourd'hui (0.2%). Toutefois, si vous voulez laisser les robots découvrez vos sites web, vous pouvez avoir besoin/voulez-vous de garder l'adresse HTTP/1.0 opérationnel. La plupart seront de toute façon d'inclure leHost: ...
en-tête, même si ils font la publicité de leur connexion en tant qu'HTTP/1.0
protocole.Aussi, les différences entre
HTTP/1.0
etHTTP/1.1
est très floue en termes de mise en œuvre. La plupart des gens sont heureux mélange des deux. Je ne voudrais pas trop vous inquiéter au sujet accepte encore de manutention/HTTP/1.0
demandes.Sur un autre serveur je commence à voir
HTTP/2.0
demandes qui ressemblent à ceci (got 2427 et je vois 34,161,268HTTP/1.0
etHTTP/1.1
demandes, afin de 0,007%):Un bon nombre de serveurs délibérément retour HTTP/1.0 réponses, parce que certains (les plus anciens), les navigateurs se permettre un HTTP/1.0 serveur une limite de connexion supérieure de la 2-connexion de la limite imposée pour HTTP/1.1 de connexions persistantes.
Mais en général, la plupart des "HTTP/1.0" implémentations sont vraiment juste un peu limité versions de HTTP/1.1 implémentations, et beaucoup de HTTP/1.1 implémentations ne soutiennent pas vraiment certaines des fonctionnalités de cette version (par exemple, le pipelining en particulier).
Je l'utilise tout le temps quand je suis telnet-ing à un serveur pour vérifier la connectivité ou de comprendre pourquoi ça ne fonctionne pas:
(Parce que faire un 1.0 demande de ne pas m'imposer de fournir toute des en-têtes supplémentaires).
Host:
en-tête, et vous êtes tous ensemble.HTTP/1.0 est très important dans l'écriture de très de base des clients qui n'ont pas besoin de la surcharge de tous les 1.1 choses comme le pipelining et d'autres choses complexes requis par la 1.1. Poster une demande d'obtenir une réponse et débranchez est très facile à code pour. Cela peut être utile dans l'écriture des cas de tests pour votre serveur, que vous voulez juste tester la fonctionnalité de l'application et non PAS la mise en œuvre du protocole HTTP.
Il y a beaucoup de navigateurs mobiles et les applications qui utilisent 1.0, car ils n'ont pas l'espace nécessaire pour les plus sophistiquées 1.1 les implémentations et les problèmes de latence avec les connexions 3G sur la non-téléphones intelligents complètement fait oublier tous les avantages des fonctions 1.1.
Il y a aussi beaucoup de procurations qui dégradent tout à 1,0 indépendamment de ce que le client demande, et puis il y a IE questions.
Donc la réponse courte est, pour un usage général, serveur HTTP, 1.0, est très pertinent.
À la recherche dans ce moi-même à d'autres fins:
Source (Juillet 2009): http://groups.google.com/group/erlang-programming/msg/08f6b72d5156ef74
🙁
Mise À Jour (Mars 2011):
Si vous allez construire un client/serveur de truc, informer le client de l'utilisation de HTTP/1.1, et que le serveur accepte les deux 1.1 et 1.0.
Faire web-développement, c'est un pain PITA à trouver des clients en essayant de charger une page sans l'en-tête d'Hôte, parce que je n'ai aucun moyen de savoir sur quel site je suis censé charge :-S
Afin de mieux vous ne construisez pas un client comme ça 😉
IME sa fait très longtemps que je l'ai vue en vrai les requêtes HTTP/1.0. (y compris les appareils mobiles fuzzylollipop).
Je dis une véritable demande que MSIE encore (prétend) pour revenir à HTTP/1.0 par défaut (sauf si yo sig dans la config) lorsque vous vous connectez via un proxy (toutes les demandes sortantes sont marqués comme HTTP/1.0) - toutefois, il ne comprend toujours HTTP/1.1 demande spécifique des en-têtes et respecte tous le HTTP/1.1 réponses.
Curieusement, IIS, dans une image de miroir, heureusement ignore la version du protocole HTTP (bien que je n'ai pas beaucoup expérimenté avec ce pour voir si seulement fait pour MSIE les agents utilisateurs).
Donc par une curieuse coïncidence, MSIE et IIS fonctionne beaucoup mieux avec les procurations que les normes des outils conformes.
C.