Que Signifie %20 dans une URL ? Explication

Par Toolinga Editorial Team · Mis à jour · 8 min de lecture

Vous collez un lien dans un message de discussion et, au lieu d'une adresse propre, vous voyez quelque chose comme https://example.com/my%20file.html. Il fonctionne quand on clique dessus, mais ce %20 au milieu ressemble à un bug. Ce n'en est pas un. Si vous vous êtes déjà demandé que signifie %20 dans une url, la réponse courte est simple : %20 est la façon d'écrire un espace à l'intérieur d'une URL, et l'encodage d'URL est le système qui rend cette traduction possible.

Toute adresse web doit respecter des règles strictes sur les caractères qu'elle peut contenir, et l'espace n'en fait pas partie. Ainsi, chaque fois qu'un nom de fichier ou un terme de recherche contenant un espace se retrouve dans une URL, l'espace devient %20. Une fois cette idée comprise, toute une famille de liens d'apparence étrange et de téléchargements qui échouent devient soudain limpide.

Pourquoi les URL ne peuvent pas contenir d'espaces

Une URL n'est pas qu'une étiquette. C'est une instruction que votre navigateur, un serveur et tous les ordinateurs intermédiaires doivent lire exactement de la même façon. Les espaces posent problème parce que l'espace sert de séparateur dans de nombreux endroits d'internet : il marque la fin d'une chose et le début d'une autre.

Imaginez une URL avec un espace brut, comme https://example.com/my file.html. Collée dans un e-mail ou un document, le logiciel peut considérer que l'adresse s'arrête à l'espace, de sorte que seul https://example.com/my devient cliquable. Le reste demeure en texte brut, et le lien se casse. Même lorsque le logiciel garde l'ensemble intact, un serveur recevant un espace brut doit deviner où l'adresse s'arrête — une recette pour les erreurs.

Les espaces sont le caractère problématique le plus courant parce que les noms de fichiers en contiennent régulièrement : « my file.html », « summer photos.zip », « final report.pdf ». Dès qu'un tel fichier est partagé sous forme de lien, ses espaces doivent être traités. L'encodage d'URL est la solution standard : chaque caractère non autorisé dans une URL est remplacé par un code sûr de trois caractères. La règle vient de la norme internet RFC 3986, qui définit la façon d'écrire les URL : les lettres, les chiffres et un petit ensemble de signes de ponctuation peuvent apparaître directement, et tout le reste doit être encodé en pourcentage.

Que signifie %20 dans une URL ? Le système du % expliqué

L'encodage d'URL, aussi appelé encodage en pourcentage, fonctionne ainsi : chaque caractère qui ne peut pas apparaître directement dans une URL est remplacé par un signe de pourcentage (%) suivi de deux chiffres hexadécimaux. L'hexadécimal est un système numérique en base 16 qui utilise les chiffres de 0 à 9 et les lettres de A à F, et ces deux chiffres identifient la valeur de code du caractère. Un espace a la valeur de code 32 en décimal, soit 20 en hexadécimal — d'où %20.

Voici les encodages les plus courants que vous rencontrerez :

  • %20 — un espace
  • %2F — une barre oblique (/)
  • %3F — un point d'interrogation (?)
  • %26 — une esperluette (&)
  • %3D — un signe égal (=)
  • %25 — un signe de pourcentage (%)

Ce dernier cas compte : comme % est le caractère d'échappement, un signe de pourcentage littéral doit lui-même être encodé en %25. Sinon, un navigateur lisant %20 ne pourrait pas savoir si vous voulez dire « un espace » ou « les caractères pourcentage, deux, zéro ». Chaque % suivi de deux chiffres hexadécimaux signifie toujours exactement un caractère encodé, et c'est ce qui rend le système sans ambiguïté.

Les caractères non ASCII suivent le même système en deux étapes : d'abord le caractère est converti en ses octets UTF-8, puis chaque octet est encodé en pourcentage. La lettre é devient deux octets en UTF-8, C3 et A9, et apparaît donc dans une URL sous la forme %C3%A9. C'est pourquoi une page consacrée à un café peut avoir une URL contenant caf%C3%A9 — simplement « café » sous une forme que tous les navigateurs et serveurs peuvent lire en toute sécurité.

Les caractères à encoder impérativement

La RFC 3986 divise les caractères en deux groupes : les caractères non réservés, qui peuvent apparaître tels quels, et tout le reste, qui doit être encodé lorsqu'il apparaît comme donnée plutôt que comme élément de la structure de l'URL.

Les caractères non réservés sont les lettres de A à Z et de a à z, les chiffres de 0 à 9 et seulement quatre signes de ponctuation : le trait d'union (-), le tiret bas (_), le point (.) et le tilde (~). Ils ne nécessitent jamais d'encodage. Si le nom de votre fichier ou votre slug n'utilise que ces caractères, son URL ressemblera exactement au texte d'origine — l'une des raisons pour lesquelles les slugs propres avec des traits d'union sont si populaires.

Il y a ensuite les caractères réservés, qui ont des rôles spéciaux dans une URL : / sépare les segments du chemin, ? lance la chaîne de requête, & sépare les paramètres de requête et = sépare le nom d'un paramètre de sa valeur. Quand l'un d'eux apparaît comme donnée ordinaire — un & dans un terme de recherche, par exemple — il doit être encodé, sinon le navigateur le prendra pour de la structure. Une recherche de « fish & chips » qui laisserait le & brut serait lue comme deux paramètres distincts au lieu d'un seul terme.

Au-delà, tout caractère hors du jeu ASCII de base — lettres accentuées, caractères d'autres écritures, emojis — doit être encodé en pourcentage via UTF-8. La règle pratique est donc simple : si un caractère n'est ni une lettre, ni un chiffre, ni un trait d'union, un tiret bas, un point ou un tilde, et qu'il ne joue pas un rôle structurel dans l'URL, encodez-le. En cas de doute, encodez : un caractère encodé est toujours sûr, tandis qu'un caractère spécial brut peut changer silencieusement le sens d'un lien. N'encodez simplement pas les caractères structurels eux-mêmes : encoder les barres obliques d'un chemin enverrait le lien vers un endroit complètement différent.

Un exemple avant-après

La façon la plus simple de comprendre que signifie %20 dans une url est de le voir se produire : trois exemples réalistes montrant le texte d'origine et l'URL encodée qui en résulte.

Exemple 1 : un nom de fichier avec un espace. Vous téléversez sur votre site un document appelé « my file.html ». Le nom de fichier brut ne peut pas aller tel quel dans un lien, donc l'espace devient %20 :

  • Avant : https://example.com/my file.html
  • Après : https://example.com/my%20file.html

La seconde version est un lien valide et cliquable qui fonctionne dans les e-mails, les documents et les messages de discussion ; la première risque de se casser à l'espace.

Exemple 2 : une recherche avec des caractères spéciaux. Supposons que quelqu'un recherche « café & tea = breakfast ». La chaîne de requête doit encoder l'espace, l'esperluette, le signe égal et le é accentué :

  • Avant : https://example.com/search?q=café & tea = breakfast
  • Après : https://example.com/search?q=caf%C3%A9%20%26%20tea%20%3D%20breakfast

Remarquez ce que fait chaque code : %C3%A9 est le é, %20 est chaque espace, %26 empêche le & de scinder la requête en morceaux et %3D empêche le = d'être lu comme la limite d'un nouveau paramètre. Sans encodage, le serveur recevrait des paramètres brouillés ; avec lui, la phrase complète arrive intacte.

Exemple 3 : décoder un lien reçu. Lire des URL encodées fonctionne à l'inverse : si un ami vous envoie https://example.com/summer%20photos.zip, décoder %20 en espace vous apprend que le fichier s'appelle « summer photos.zip ».

Encodez ou décodez instantanément

Maintenant que vous savez que signifie %20 dans une url et comment fonctionne le système du pourcentage, vous n'aurez plus jamais besoin d'encoder ou de décoder des URL à la main. Collez un nom de fichier, une phrase de recherche ou un lien désordonné plein de codes % dans un encodeur et décodeur d'URL gratuit et obtenez le résultat en une seconde : les espaces en %20, les caractères accentués en leurs codes UTF-8 et les URL encodées redevenues du texte lisible.

Cela compte bien au-delà de la réparation d'un seul lien cassé. Les développeurs qui encodent des données de formulaires, les spécialistes du marketing qui créent des liens de suivi avec des paramètres de requête et toute personne partageant des fichiers dont les noms contiennent des espaces s'appuient tous sur la même conversion. Bien la réaliser, c'est obtenir des liens qui fonctionnent partout : dans les e-mails qui renvoient les lignes à la ligne et dans les navigateurs qui analysent les adresses avec rigueur.

La même idée s'applique aussi à d'autres formats. Par exemple, l'encodage Base64 est une autre façon de convertir des données en une forme textuelle sûre et transmissible, utilisée pour intégrer des données dans des pages web et des e-mails : un encodage différent, le même principe.

La prochaine fois que vous repérerez %20 dans un lien, vous saurez que ce n'est pas une erreur. C'est un espace, traduit dans la seule langue sur laquelle toutes les parties du web s'accordent — c'est exactement ce dont il s'agit quand on se demande que signifie %20 dans une url. Encodez avant de publier, et vos liens fonctionneront tout simplement.

Que signifie %20 dans une URL ?

%20 est la forme encodée en pourcentage d'un espace. Comme les espaces ne sont pas autorisés directement dans les URL, tout espace dans un nom de fichier, un titre de page ou un terme de recherche devient %20 pour que le lien reste valide et cliquable.

À quoi sert l'encodage d'URL %20 ?

L'encodage d'URL convertit les caractères non autorisés dans une URL en un format sûr composé de % plus deux chiffres hexadécimaux. %20 représente spécifiquement un espace, tandis que d'autres codes couvrent / (%2F), ? (%3F), & (%26) et = (%3D).

Pourquoi certaines URL utilisent-elles + au lieu de %20 pour les espaces ?

Dans la chaîne de requête d'une URL, les données de formulaire encodent traditionnellement un espace sous la forme +. Dans la partie chemin, un espace est toujours %20. Les deux sont valides dans leur propre contexte, mais %20 est l'encodage général et standard d'un espace.

Comment décoder une URL avec %20 et d'autres codes ?

Collez l'URL dans un outil de décodage d'URL, qui reconvertit %20 en espaces et restaure les caractères accentués comme le é à partir de codes tels que %C3%A9 — c'est que signifie %20 dans une url en action.

Guides similaires

À Quoi Sert le Hash SHA-256 ? Guide Simple

Découvrez à quoi sert le hash SHA-256 : mots de passe, téléchargements et blockchains, avec un exemple réel et un générateur de…

8 novembre 2026

Qu'est-ce qu'un timestamp Unix ? Guide simple

Qu'est-ce qu'un timestamp Unix ? Découvrez ce que signifient ces nombres à 10 chiffres, comment les lire et les convertir en date.

7 novembre 2026

À quoi sert un UUID ? Les identifiants uniques expliqués

À quoi sert un UUID ? Découvrez où apparaissent ces identifiants aléatoires, pourquoi les bases de données s'y fient et comment…

2 novembre 2026

Comment Tester une Regex en Ligne : Guide Pratique

Apprenez comment tester une regex en ligne : exemples d'e-mail et de dates, correction des correspondances gloutonnes et un…

1 novembre 2026