url absolu ou relative

WRInaute discret
Bonjour, j'intégrais une image dans une de mes pages quand soudain je me suis posse une question existentielle.
Le scr de l'image doit il être une url absolu ou relative ?
Et en terme de perf quel est l'impact de l'une ou l'autre des solutions.

Merci.
 
WRInaute passionné
@biddybulle: En l'occurence, c'est pas le serveur qui retrouve le chemin, hein ;) C'est le client bien sûr ! :)

Pour revenir à la question, si tu veux t'assurer un bon linking, il y a toujours la balise <base href=""> à mettre dans le <head>, et là tu peut utiliser du relatif sans problème.
 
WRInaute impliqué
biddybulle a dit:
absolu comme ca on embête pas trop le serveur à retrouver le chemin.
Ceci ne concerne pas le serveur.

C'est le navigateur qui, lorsqu'il construit la requete HTTP, décide de l'url relative de la page demandée par rapport à la racine.
Une requete HTTP ressemble à ça:
Code:
GET /blabla/test.html HTTP/1.1
Host: www.example.com
 
WRInaute discret
Wahouu, ca devient technique.
Ma question de départ était simple.
Il est préférable d'appeler une image dans une page sous la form

src="../../images/dossier/toto.gif"
ou
src="http:www.monsite.fr/images/dossier/toto.gif"
 
WRInaute passionné
wissim a dit:
src="../../images/dossier/toto.gif"
ou
src="http:www.monsite.fr/images/dossier/toto.gif"

C'est simple.
Pour faire "propre" dans le premier cas, je te recommande d'utiliser la balise <base> comme ceci :

Code:
<head>
...
<base href="http://www.example.com" />
</head>

Et là, tu pourra utiliser ta première méthode en lieu et place de la seconde, ce qui en plus évitera de surcharger le code source de ta page.
 
WRInaute discret
trés bien merci.
je ne connaisais pas cette balise.
par contre cette balise est utile dans quel cas en particulier (les robots, ...) ?
si j'affiche le code source de ma page je verais quoi ?
http:www.monsite.fr/images/dossier/toto.gif ?
 
WRInaute passionné
Elle fonctionne pour tout, les robots comme les navigateurs. Si t'affiche le code source, rien n'est changé, par contre, ton navigateur sait qu'il doit partir de cette "base" pour constuire les url relatives :)
 
WRInaute occasionnel
ben si tu utilises / en premier je pensais que ça s'appelait ABSOLUE et non pas RELATIVE car relative c'est par rapport à la page sur laquelle on est actuellement.

par exemple si ta page est à la base de ton site alors:
images/toto.gif <- RELATIVE
et
/images/toto.gif <- ABSOLUE

C'est comme ça que je le vois, je ne pense pas qu'il faille ajouter le nom de domaine pour dire que c'est ABSOLUE, mais peut etre que j'ai tort, c'est possible
 
Nouveau WRInaute
Pour ma part j'utilisais de l'absolu en 2005, depuis j'utilise le relatif en faisait "./images/header.png" ce qui est pareil que "images/header.png" ;-)

je connaissais pas la balise <base href=""> mais elle doit pas servir à grand chose en tout cas mais bon j'aurai appris un truc aujourd'hui :p
 
Discussions similaires
Haut