Incompréhension sur les Headers

jdaviaud Messages postés 151 Date d'inscription mercredi 8 janvier 2003 Statut Membre Dernière intervention 8 octobre 2013 - 12 juin 2008 à 11:48
huberdine Messages postés 158 Date d'inscription samedi 8 février 2003 Statut Membre Dernière intervention 17 juin 2010 - 16 juin 2008 à 09:51
Bonjour à tous,

Pour un des sites de mon entreprise, j'ai voulu le passer une fois terminé dans la moulinette W3C ( http://validator.w3.org/ ) qui m'a permi de régler des petits problèmes mineurs, par contre il me reste une grosse incomprehension sur une remarque qu'il me fait sur mes headers, voici le message en question :

"
The character encoding specified in the HTTP header
(
utf8
)
is different from the value in the
<meta>
element
(
utf-8
). I will use the
value from the HTTP header
(
utf-8
) for this
validation."

Je ne comprends pas où il me trouve ce header
(
utf8
) car je n'ai qu'une déclaration au debut de mes fichiers
"<meta http-equiv="Content-Type" content="text/html;charset=utf-8">"

donc je comprends pas où il me trouve cette déclaration dans le header avec utf8 sans le tiret

Et je ne comprends meme pas leur phrase : ils disent que :
- Header =>
utf8
- Meta => utf-8

et donc en conclusion il me dit en gros "Qu'a cela ne tienne, je prends le header => utf-8" alors que d'apres sa phrase d'avant utf-8 c'est le meta et non pas le header dans mon cas je suis donc un peu perdu

Ce header il est définit ou exactement ? au niveau du serveur directement je suppose vu que je trouve null par dans mes sources de utf8 sans tiret

Merci d'avance de vos lumieres car je suis un peu perdu la
            
                

3 réponses

huberdine Messages postés 158 Date d'inscription samedi 8 février 2003 Statut Membre Dernière intervention 17 juin 2010
12 juin 2008 à 14:36
Les header dont il est question sont les header HTTP.
Ils sont générés par le serveur et n'apparaissent pas dans le code html.
Si tu as la main sur la configuration de ton serveur, tu dois pouvoir modifier la valeur.
Pour le php : dans php.ini
default_charset = "utf-8"

Pour Apache : dans httpd.conf (ou dans un .htaccess à la racine du site)
AddDefaultCharset UTF-8
0
Bling 182 Messages postés 510 Date d'inscription lundi 27 novembre 2006 Statut Membre Dernière intervention 5 juillet 2009 3
15 juin 2008 à 15:42
le header (utf-8) dont il te parle, il l'a trouvé dans la balise <meta http-equiv...>, qui spécifie l'encodage de ta page.
Par contre, c'est vrai qu'il se contredit...
0
huberdine Messages postés 158 Date d'inscription samedi 8 février 2003 Statut Membre Dernière intervention 17 juin 2010
16 juin 2008 à 09:51
Les "headers" sont à ne pas confondre avec la partie <head></head> d'une page html.
Ce que l'on appelle les headers (ou headers http) sont des informations qui circulent entre un serveur et un navigateur web.
Il est possible de visualiser les headers avec des plugins firefox ou via des outils en ligne comme celui-ci : http://www.webrankinfo.com/outils/header.php
Exemple de header :
HTTP/1.1 200 OK
Date: Mon, 16 Jun 2008 07:45:04 GMT
Server: Apache
X-Powered-By: PHP/5.1.2
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Pragma: no-cache
Cache-Control: no-cache, must-revalidate
Set-Cookie: PHPSESSID=c902e148913e0cd4fac7af123800d0aa; path=/
Connection: close
Content-Type: text/html; charset=ISO-8859-1

On a d'autre part la balise <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> qui elle est du html.
L'outil de validation du W3C vérifie la concordance de l'information entre le charset fourni par les headers et celui fournit par la balise meta.
0
Rejoignez-nous