Hello Bernard,
Le 19/08/2016 à 16:34, Bernard Schoenacker a écrit :
bonjour,
j'ai crié trop vite hourra ... ;(
voici l'exemple qui pose problème (un simple texte) :
http://happy-tux.org/marco/README
slt
bernard
J'ai fait quelques tests et je pense que c'est plutôt côté serveur qu'il
faut intervenir.
Je pense que le navigateur se doit d'être passif :) .
En utilisant l'URL que tu as précisé, je me suis rendu compte que la
réponse du serveur HTTP ne précisait pas de "Content-Type", donc pas de
Charset (habituellement, l'un ne va pas sans l'autre :) ) dans la réponse.
De fait, cela laisse libre court au navigateur d’interpréter le contenu
de la page servie; Certains le font peut-être correctement, d'autres
moins. (en l’occurrence avec Firefox 48.0 ou Chromium 37.0, j'ai le même
résultat : l'affichage des caractères spéciaux est en échec).
Je me suis donc adonné à quelques tests avec un serveur Debian Jessie
que j'avais sous la main, délivrant du contenu HTTP avec un Apache.
Le même comportement a été observé si on nomme le fichier seulement
"README" et dont le contenu est en UTF-8 (pas de "Content-Type" renvoyé).
S'il est nommé "README.txt", cela change un peu, car dans ce cas , le
"Content-Type: text/plain" est renvoyé au navigateur.
*Solution de contournement* , si bien sûr tu as la main sur le serveur
concerné; Ça "juste marche" de mon côté : même si personnellement je
trouve ça un peu crado, mais faute de mieux ... :
# a2enmod headers
puis dans un .htaccess dans le dossier concerné :
<Files "README">
Header set Content-Type "text/plain; charset=utf-8"
</Files>
Une autre solution passe peut-être par l'ajout de la directive
"AddDefaultCharset UTF-8" (fonctionne également dans un .htaccess si le
fichier que l'on souhaite consulter est nommé "README.txt") mais j'ai un
doute si le fichier est seulement nommé "README" (car Apache ne renvoie
pas de "Content-Type" et donc pas de "charset" dans ce cas).
Bien penser à recharger la page en vidant le cache associé (CTRL+Shift+R
dans le cas Firefox), pour voir si cela a bien eu l'effet escompté.
Accessoirement si "Internal Server Error" s'affiche, c'est probablement
qu'il manque un module apache, auquel cas, les logs "error" devraient
t'en dire plus.
En espérant que cela aide :).
@+
Christophe.