LA CLOCHE

Il y a ceux qui ont lu cette nouvelle avant vous.
Abonnez-vous pour recevoir de nouveaux articles.
E-mail
Nom
Nom de famille
Comment voulez-vous lire La Cloche ?
Pas de spam

Qu'est-ce qu'une adresse URL - sa structure et spécifications techniques - 3,5 sur 5 basé sur 4 votes

L'abréviation URL signifie Uniform Resource Locator. Traduit, cela signifie « localisateur de ressources unique ». L'idée originale de Tim Bernes-Lee, le "père" World Wide Web, créé pour simplifier la structuration des données sur Internet et regrouper toutes les adresses sous un seul formulaire.

Prononciation acceptée : "u-er-el" ou "yu-ar-el". Dans le langage courant, il est acceptable de prononcer cette abréviation comme « URL ». Dans cet article, nous verrons ce qu'est une URL, quelle est sa structure et caractéristiques techniques que tout webmaster doit savoir.

Schéma et structure de l'URL

Qu'est-ce qu'une URL ? En d'autres termes, il s'agit du chemin d'accès à un fichier : HTML, vidéo, audio, texte, etc. Tous les documents situés sur Internet ont cette adresse. Ce n'est qu'à l'aide d'une URL qu'un serveur peut fournir l'accès à ses fichiers à tout utilisateur du World Wide Web.

Bien sûr, il existe une norme. C'est lui qui détermine exactement à quoi doit ressembler l'URL d'un document particulier. Cette norme est utilisée non seulement pour accéder aux sites et aux fichiers via les protocoles http et https, elle est également utilisée lors du transfert de fichiers vers le serveur via protocole FTP et dans d'autres protocoles. Mais ils ne nous intéressent pas dans ce cas.

Comment spécifier l'adresse URL des ressources Web ?

En général, une URL peut contenir de nombreux paramètres. Mais pour accéder simplement à un fichier spécifique situé dans un dossier de votre site, vous ne devez en utiliser que quelques-uns. Ainsi, par exemple, pour obtenir le contenu d'un fichier spécifique situé sur un site donné, il suffit d'indiquer ce qui suit :

http://site/direktoriya/fail.html

Regardons tout en détail :

  • http:// - protocole de transfert de données.
  • site web - Nom de domaine, nom du nœud (hôte) et paramètres supplémentaires.
  • /direktoriya/ - le répertoire dans lequel se trouve le fichier dont nous avons besoin. À partir de cette partie du lien, nous voyons que le dossier direktoriya est stocké sur le serveur, qui contient le fichier dont nous avons besoin.
  • fail.html est un fichier avec l'extension ".html", ce dont nous avons besoin.

En général, l’URL d’un site, d’une page ou d’une image est claire. Maintenant, allons un peu plus loin.

Structure des URL

Le schéma général (structure) d’une URL est le suivant :

Chacun de ces paramètres est important et a sa propre signification :

  • Schéma – protocole de transfert de données. Grâce à lui, nous accédons à la ressource. (http, https, ftp, etc.)
  • Login et mot de passe - ces données ne sont généralement pas spécifiées dans le protocole http. Ils déterminent les droits de l'utilisateur pour accéder à une page spécifique du site.
  • Le chien (@) est un séparateur spécial. Il n'est pas indiqué sans login et mot de passe.
  • Un hôte est un nom de domaine, parfois l'adresse IP de la ressource à laquelle l'utilisateur accède. (site web)
  • Le port est également indiqué assez rarement. Lors de l'accès à un site ou à tout fichier situé sur le site, l'une des valeurs est automatiquement attribuée - 80 ou 8080.
  • Le chemin de l'URL est le chemin d'accès à un fichier particulier. (/direktoriya/fail.html)
  • Paramètres – demande avec certains paramètres, qui sont envoyés au serveur à l'aide de la méthode GET. Pour séparer les paramètres, utilisez le signe &, par exemple : ?parameter1=value1¶meter2=value2
  • Une ancre est une chaîne unique composée de lettres et/ou de chiffres. Il fait référence à une zone spécifique du document Web en cours d'ouverture. Avec son aide, vous pouvez vous assurer que l'utilisateur n'arrive pas au début du document HTML, mais immédiatement à un endroit précis.

Informations supplémentaires concernant les URL

1. Les URL utilisent des encodages différents. S'il n'y a pas d'encodage, vous ne pouvez utiliser qu'un certain nombre de caractères. Il est recommandé d'utiliser les symboles ,,,[_],[-].

Pour éviter les erreurs, le développeur doit nommer les fichiers du site uniquement dans minuscule et indiquez-leur le chemin d'accès de la même manière - en petites lettres. Parce que, sur les systèmes de type Unix, et sur les serveurs Web qui fonctionnent le plus souvent sur ceux-ci, les caractères écrits dans des registres différents seront perçus par la machine comme différents. Cela n’existe pas sous Windows, mais il ne faut quand même pas négliger la règle car si votre fichier est nommé en minuscule, et que dans l’URL vous avez indiqué son nom en majuscule, alors le serveur ne pourra pas l’ouvrir.

Les caractères russes peuvent être utilisés, cependant, chaque caractère russe subira un recodage (URL Encoding). Et après le recodage, ils auront l'air « effrayants », car tout caractère cyrillique sera codé sur 2 octets en UTF-8 en hexadécimal. Les caractères sont séparés par le signe « % ».

http://site/tout pour le webmaster

Cela ressemblera à :

http://site/%u0432%u0441%u0435%20%u0434 %u043B%u044F%20%u0432%u0435%u0431%u043C%u0430 %u0441%u0442%u0435%u0440%u0430

Ils essaient cependant de remédier pas trop vite à cet inconvénient. Par conséquent, lorsque vous utilisez la CNC sur votre CMS, il est préférable d'utiliser la translittération (vse-dlya-webmastera). Ce sera plus facile à naviguer, et probablement meilleur pour le référencement.

2. Il existe également de telles URL appelées dynamiques. De telles URL contiennent différents caractères (« ? », « & », « = », etc.) avec lesquels les paramètres sont définis ; lorsque nous avons examiné la structure de l'URL, nous avons déjà mentionné les paramètres, voir ci-dessus. De telles adresses apparaissent grâce au travail de scripts publiés sur le site. Dans ce cas, le lien peut ressembler à ceci.

réseau-resource-manager.exe


4,48 Mo.

réseau-resource-manager.exe Téléchargement Gratuit.
Si vous recevez une erreur network-resource-manager.exe est manquant :
- Vous pouvez essayer de télécharger ce fichier et le coller dans le répertoire où il manque
Si vous recevez un message d'erreur dans le fichier network-resource-manager.exe :
- Essayez de le remplacer par celui-ci.

Si cela ne résout pas le problème, essayez de copier ce fichier dans répertoire système votre système d'exploitation.
Si vous ne trouvez pas les répertoires des fenêtres, essayez :
1. Appuyez et maintenez Windows sur votre clavier, puis appuyez sur le bouton R.
2. Tapez la commande "cmd" et appuyez sur Entrée
3. Dans la fenêtre de commande, entrez la commande « set systemroot » et appuyez sur Entrée. Il affichera le répertoire système.
4. Faites copie de sauvegarde réseau-resource-manager.exe sur ton ordinateur
5. et copiez le fichier network-resource-manager.exe dans les répertoires : System ou System32 ou System64.

Analyse antivirus :

Toutes les URL pour télécharger ce fichier :

HTTP est un protocole de transfert d'hypertexte entre systèmes distribués. En fait, http est un élément fondamental du Web moderne. En tant que développeurs Web qui se respectent, nous devrions en savoir le plus possible à ce sujet.

Examinons ce protocole à travers le prisme de notre profession. Dans la première partie, nous passerons en revue les bases et examinerons les demandes/réponses. Dans le prochain article, nous examinerons des fonctionnalités plus détaillées, telles que la mise en cache, le traitement des connexions et l'authentification.

Également dans cet article, je ferai principalement référence à la norme RFC 2616 : Hypertexte Protocole de transfert-- HTTP/1.1.

Bases du HTTP

HTTP permet la communication entre plusieurs hôtes et clients et prend en charge une gamme de paramètres réseau.

Fondamentalement, TCP/IP est utilisé pour la communication, mais ce n'est pas le seul variante possible. Par défaut, TCP/IP utilise le port 80, mais d'autres peuvent être utilisés.

La communication entre l'hôte et le client se déroule en deux étapes : demande et réponse. Le client génère une requête HTTP, en réponse à laquelle le serveur fournit une réponse (message). Un peu plus tard, nous examinerons ce schéma de travail plus en détail.

La version actuelle du protocole HTTP est la 1.1, dans laquelle quelques nouvelles fonctionnalités ont été introduites. À mon avis, les plus importants d'entre eux sont : la prise en charge d'une connexion constamment ouverte, un nouveau mécanisme de transfert de données, un codage de transfert fragmenté, de nouveaux en-têtes pour la mise en cache. Nous en examinerons certains dans la deuxième partie de cet article.

URL

Le cœur de la communication Web est la requête, qui est envoyée via l'Uniform Resource Locator (URL). Je suis sûr que vous savez déjà ce qu'est une URL, mais par souci d'exhaustivité, j'ai décidé de dire quelques mots. La structure de l'URL est très simple et se compose des éléments suivants :

Le protocole peut être soit http pour des connexions régulières, soit https pour un échange de données plus sécurisé. Le port par défaut est 80. Il est suivi du chemin d'accès à la ressource sur le serveur et d'une chaîne de paramètres.

Méthodes

À l'aide d'une URL, nous définissons le nom exact de l'hôte avec lequel nous voulons communiquer, mais l'action que nous devons effectuer ne peut être communiquée qu'en utilisant la méthode HTTP. Bien entendu, il existe plusieurs types d’actions que nous pouvons entreprendre. HTTP implémente les plus nécessaires, adaptés aux besoins de la plupart des applications.

Méthodes existantes :

OBTENIR: Accédez à une ressource existante. L'URL répertorie tous information nécessaire, afin que le serveur puisse trouver et renvoyer la ressource requise en réponse.

POSTE: Utilisé pour créer une nouvelle ressource. Une requête POST contient généralement toutes les informations nécessaires pour créer une nouvelle ressource.

METTRE: Mettre à jour la ressource actuelle. La requête PUT contient les données à mettre à jour.

SUPPRIMER: Utilisé pour supprimer une ressource existante.

Ces méthodes sont les plus populaires et les plus souvent utilisées divers instruments et les cadres. Dans certains cas, les requêtes PUT et DELETE sont envoyées par l'envoi d'un POST dont le contenu indique l'action à effectuer sur la ressource : créer, mettre à jour ou supprimer.

HTTP prend également en charge d'autres méthodes :

TÊTE: Similaire à GET. La différence est qu'avec ce type de requête aucun message n'est transmis. Le serveur ne reçoit que les en-têtes. Utilisé, par exemple, pour déterminer si une ressource a été modifiée.

TRACER: lors de la transmission, la requête transite par de nombreux points d'accès et serveurs proxy, dont chacun saisit ses propres informations : IP, DNS. En utilisant cette méthode, vous pouvez voir toutes les informations intermédiaires.

OPTIONS: utilisé pour définir les capacités, les paramètres et la configuration du serveur pour une ressource spécifique.

Codes d'état

En réponse à une demande du client, le serveur envoie une réponse, qui contient également un code d'état. Ce code a une signification particulière afin que le client puisse comprendre plus clairement comment interpréter la réponse :

1xx : Messages d'information

Un ensemble de ces codes a été introduit dans HTTP/1.1. Le serveur peut envoyer une requête de la forme : Expect : 100-continue, ce qui signifie que le client envoie toujours le reste de la requête. Les clients exécutant HTTP/1.0 ignorent ces en-têtes.

2xx : messages de réussite

Si le client a reçu un code de la série 2xx, la demande a été envoyée avec succès. L'option la plus courante est 200 OK. À Requête OBTENIR, le serveur envoie la réponse dans le corps du message. Il existe également d'autres réponses possibles :

  • 202 Accepté: La requête est acceptée, mais ne peut pas contenir la ressource dans la réponse. Ceci est utile pour les requêtes asynchrones côté serveur. Le serveur détermine s'il doit envoyer la ressource ou non.
  • 204 Aucun contenu: Il n'y a aucun message dans le corps de la réponse.
  • 205 Réinitialiser le contenu: Demande au serveur de réinitialiser la présentation du document.
  • 206 Contenu partiel: La réponse ne contient qu'une partie du contenu. Des en-têtes supplémentaires déterminent la longueur totale du contenu et d'autres informations.

3xx : redirection

Une sorte de message au client sur la nécessité d'entreprendre une action supplémentaire. Le cas d'utilisation le plus courant consiste à rediriger le client vers une autre adresse.

  • 301 Déménagé Définitivement: La ressource peut désormais être trouvée à une URL différente.
  • 303 Voir Autre: La ressource peut temporairement être trouvée à une URL différente. L'en-tête Location contient une URL temporaire.
  • 304 Non modifié: Le serveur détermine que la ressource n'a pas été modifiée et le client doit utiliser la version mise en cache de la réponse. Pour vérifier l'identité des informations, ETag (Entity Tag hash) est utilisé ;

4xx : erreurs client

Cette classe de message est utilisée par le serveur s'il décide que la demande a été envoyée par erreur. Le code le plus courant est 404 Not Found. Cela signifie que la ressource n'a pas été trouvée sur le serveur. Autres codes possibles :

  • 400 Mauvaise demande : La question a été mal formulée.
  • 401 Non autorisé: Une authentification est requise pour faire une demande. Les informations sont transmises via l’en-tête Authorization.
  • 403 Interdit: Le serveur n'a pas autorisé l'accès à la ressource.
  • Méthode 405 non autorisée: Une méthode HTTP non valide a été utilisée pour accéder à la ressource.
  • 409 Conflit: le serveur ne peut pas traiter entièrement la requête car j'essaie de changer davantage nouvelle version Ressource. Cela arrive souvent avec les requêtes PUT.

5xx : erreurs de serveur

Une série de codes utilisés pour détecter une erreur de serveur lors du traitement d'une demande. La plus courante : 500 Erreur interne du serveur. Autres options:

  • 501 Non mis en œuvre: Le serveur ne prend pas en charge la fonctionnalité demandée.
  • 503 Service Indisponible: Cela peut arriver si le serveur a une erreur ou est surchargé. Habituellement, dans ce cas, le serveur ne répond pas et le délai imparti pour la réponse expire.

Formats de message de demande/réponse

Dans l'image suivante, vous pouvez voir un processus schématique d'envoi d'une requête par le client, de traitement et d'envoi d'une réponse par le serveur.

Regardons la structure d'un message transmis via HTTP :

Message = *() CRLF [ ] = Ligne de demande | Ligne d'état = Nom du champ ":" Valeur du champ

Il doit y avoir une ligne vide entre l'en-tête et le corps du message. Il peut y avoir plusieurs rubriques :

Le corps de la réponse peut contenir informations complètes ou une partie de celui-ci, si la fonctionnalité correspondante est activée (Transfer-Encoding: chunked). HTTP/1.1 prend également en charge l'en-tête Transfer-Encoding.

Rubriques générales

Voici plusieurs types d’en-têtes utilisés à la fois dans les requêtes et les réponses :

En-tête général = Cache-Control | Connexion | Dates | Pragma | Remorque | Transfert-Encodage | Mise à niveau | Par | Avertissement

Nous avons déjà abordé certaines choses dans cet article, certaines seront abordées plus en détail dans la deuxième partie.

L'en-tête via est utilisé dans une requête TRACE et est mis à jour par tous les serveurs proxy.

L'en-tête Pragma est utilisé pour répertorier les en-têtes personnalisés. Par exemple, Pragma : no-cache est identique à Cache-Control : no-cache. Nous en parlerons davantage dans la deuxième partie.

L'en-tête Date est utilisé pour stocker la date et l'heure de la demande/réponse.

L'en-tête Upgrade est utilisé pour modifier le protocole.

Transfer-Encoding est destiné à diviser la réponse en plusieurs morceaux à l'aide de Transfer-Encoding: chunked. Il s'agit d'une nouvelle fonctionnalité dans HTTP/1.1.

En-têtes d'entité

Les en-têtes d'entité transmettent des méta-informations sur le contenu :

En-tête d'entité = Autoriser | Encodage de contenu | Contenu-Langage | Longueur du contenu | Emplacement du contenu | Contenu-MD5 | Gamme de contenu | Type de contenu | Expire | Dernière modification

Tous les en-têtes préfixés par Content- fournissent des informations sur la structure, l'encodage et la taille du corps du message.

L'en-tête Expires contient l'heure et la date d'expiration de l'entité. La valeur « n'expire jamais » signifie le temps + 1 code à partir du moment actuel. Last-Modified contient l'heure et la date dernier changement essence.

A l'aide de ces en-têtes, vous pouvez préciser les informations nécessaires à vos tâches.

Format de demande

La requête ressemble à ceci :

Ligne de requête = Méthode SP URI SP HTTP-Version Méthode CRLF = "OPTIONS" | "TÊTE" | "OBTENIR" | "POST" | "METTRE" | "SUPPRIMER" | "TRACER"

SP est le séparateur entre les jetons. La version HTTP est spécifiée dans HTTP-Version. La requête réelle ressemble à ceci :

GET /articles/http-basics HTTP/1.1 Hôte : www.articles.com Connexion : keep-alive Cache-Control : no-cache Pragma : no-cache Accepter : text/html,application/xhtml+xml,application/xml; q=0,9,*/*;q=0,8

Liste des en-têtes de requête possibles :

En-tête de requête = Accepter | Accepter-Charset | Accepter-Encodage | Accepter-Langue | Autorisation | Attendez-vous | De | Hôte | Si-Match | Si-Modifié-Depuis | Si aucune correspondance | Si-Plage | Si-non modifié-depuis | Max-Forwards | Autorisation par procuration | Gamme | Référent | TE | Agent utilisateur

L'en-tête Accept spécifie les types MIME, la langue et le codage de caractères pris en charge. Les en-têtes From, Host, Referer et User-Agent contiennent des informations sur le client. Les préfixes If- sont destinés à créer des conditions. Si la condition ne répond pas, une erreur 304 Not Modified se produira.

Format de réponse

Le format de réponse ne diffère que par le statut et le nombre d'en-têtes. Le statut ressemble à ceci :

Ligne d'état = Version HTTP SP Code d'état SP Raison-Phrase CRLF

  • Version HTTP
  • Code d'état
  • Message d'état lisible par l'homme

L'état normal ressemble à ceci :

HTTP/1.1 200 OK

Les en-têtes de réponse peuvent être les suivants :

En-tête de réponse = Accept-Ranges | Âge | Etag | Localisation | Authentification par proxy | Réessayer après | Serveur | Varier | WWW-Authentifier

  • L'âge est le temps en secondes pendant lequel le message a été créé sur le serveur.
  • ETag Entités MD5 pour vérifier les changements et modifications de la réponse.
  • L'emplacement est utilisé pour la redirection et contient la nouvelle URL.
  • Server spécifie le serveur sur lequel la réponse a été générée.

Je pense que c'est assez de théorie pour aujourd'hui. Jetons maintenant un coup d'œil aux outils que nous pouvons utiliser pour surveiller les messages HTTP.

Outils de détection du trafic HTTP

Il existe de nombreux outils pour surveiller le trafic HTTP. En voici quelques-uns :

Les outils de développement Chrome les plus couramment utilisés sont :

Si nous parlons d'un débogueur, vous pouvez utiliser Fiddler :

Pour surveiller le trafic HTTP, vous aurez besoin de curl, tcpdump et tshark.

Bibliothèques pour travailler avec HTTP - jQuery AJAX

Étant donné que jQuery est si populaire, il dispose également d'outils pour gérer les réponses HTTP pour les requêtes AJAX. Des informations sur jQuery.ajax (paramètres) sont disponibles sur le site officiel.

En passant un objet settings et en utilisant la fonction de rappel beforeSend, nous pouvons définir les en-têtes de requête à l'aide de la méthode setRequestHeader().

$.ajax(( url : "http://www.articles.com/latest", tapez : "GET", beforeSend : function (jqXHR) ( jqXHR.setRequestHeader("Accepts-Language", "en-US,en "); ) ));

Si vous souhaitez traiter le statut de la demande, vous pouvez le faire comme ceci :

$.ajax(( statusCode: ( 404: function() ( alert("page not found"); ) ) ));

Conclusion

Le voici, un tour des bases du protocole HTTP. Il y en aura encore plus dans la deuxième partie faits intéressants et des exemples.

En anglais, il signifie Uniform Resource Locator, qui traduit en russe signifie « localisateur de ressources unifié ». En russe, cette abréviation est généralement prononcée comme « u-er-el », « yu-ar-el » ou simplement « url ». Essayons de comprendre plus en détail ce qu'est une URL. Chaque document (page Web) sur Internet possède un emplacement spécifique qui peut être localisé. À l'aide d'une URL, le chemin exact vers une page Web spécifique est indiqué. Tout comme vous spécifiez le chemin d'accès à n'importe quel fichier sur votre ordinateur, l'URL est construite selon un modèle spécifique, qui ressemble généralement à ceci :

http://name.ru/papka/document.html

Où http - indique le type de protocole par lequel les données sont transférées, name.ru - désigne le nom de domaine du site, papa est un dossier et document.html est une page spécifique vers laquelle mène cette URL.

Étant donné que notre URL http://name.ru/papka/document.html est fictive, n'est donnée qu'à titre d'exemple et, par conséquent, ne mène à aucune page Web, alors si nous essayons de cliquer dessus, nous serons redirigé vers une page contenant des informations sur l’erreur. Cela peut paraître différent, mais nous verrons certainement l'inscription « 404 not found ». " Pas trouvé« en traduction signifie « introuvable », et l'apparition d'une page 404 signifie que l'adresse URL de la page Web a été saisie de manière incomplète, incorrecte (avec une erreur ou une faute de frappe), ou que la page demandée ne se trouve plus à cette adresse car il a été supprimé ou renommé.

Une erreur 404 se produit souvent lorsque vous cliquez sur un lien trouvé sur une autre page et que le lien est obsolète. L'auteur du site aurait pu déplacer le document dont nous avions besoin, le renommer ou le supprimer. Que faire si une page 404 apparaît lors de la transition ? Tout d’abord, vérifiez que l’URL est correcte si nous la connaissons. Corrigez les erreurs ou fautes de frappe et réessayez. Si l'erreur 404 se produit lorsque vous suivez un lien vers une ressource inconnue, vous devriez essayer d'accéder à la page principale et d'utiliser la recherche sur le site - il est possible que les informations nécessaires soient toujours trouvées.

À propos, de nombreux développeurs de sites Web veillent à ce que la page 404 de leur site ne paraisse pas terriblement désespérée. Un texte humoristique avec une image amusante est placé ici pour remonter le moral de l'utilisateur perdu, ainsi que des liens vers le site principal, la barre de recherche ou le plan du site. Si la page 404 ne semble pas conviviale et qu'il n'y a aucun lien à suivre, vous pouvez essayer de raccourcir manuellement l'URL, en ne laissant que le nom du site - dans notre exemple, ce sera http://name.ru/ et ainsi essayer d'obtenir à page d'accueil site Web à partir duquel vous pouvez accéder à la page que vous recherchez.

LA CLOCHE

Il y a ceux qui ont lu cette nouvelle avant vous.
Abonnez-vous pour recevoir de nouveaux articles.
E-mail
Nom
Nom de famille
Comment voulez-vous lire La Cloche ?
Pas de spam