web-dev-qa-db-fra.com

Quand une URL est-elle codée?

Quand il y a des espaces dans une URL comme

http://example.com/this is not url enocoded

il est évident que l'URL finira par

http://example.com/this%20is%20not%20url%20encoded

Quand et qu'est-ce qui va encoder mon URL?

  • Les liens que je crée vers mon URL doivent-ils être codés dans mes documents HTML?
  • Le navigateur fait-il l'encodage?
  • Est-ce que le serveur fait l'encodage?
2
Krystian

Les navigateurs encoderont automatiquement les URL avec des espaces, en supposant que vous ayez lié le fichier correctement.

Créez un fichier sur votre serveur appelé lien test one.html ou envoyez-le simplement directement dans votre navigateur à l'aide d'espaces dans la barre d'URL. http://www.example.com/test one.html

Cela deviendra test%20one.html

Ce n'est pas un moyen idéal de nommer ou de lier des fichiers, mais le navigateur le traitera très bien. Si vous avez beaucoup de fichiers statiques avec des espaces que vous souhaitez mettre à jour en - tirets ou traits d'union. Un excellent programme à utiliser est

http://www.bulkrenameutility.co.uk/Main_Intro.php

2
Anagio

Bien que les navigateurs puissent automatiquement convertir les espaces en versions codées, vous devez vous assurer que le logiciel de votre serveur génère des URL correctement codées.

Tous les navigateurs/robots ne peuvent pas coder correctement.

Si vous ne possédez pas de CMS, vous devez coder les URL dans votre contenu HTML.

Le meilleur moyen consiste à ne pas utiliser d'URL contenant des caractères spéciaux.

2
Tero Kilkanen