Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 15/05/2016, à 05:48

shyfox0

caractères spéciaux apache

Bonjour,
J'ai réinstallé ubuntu (16.04). J'ai donc du réinstaller le serveur apache.
Depuis les caractères spéciaux s'affichent mal sur mon site web en local.
Quelqu'un peut m'aider ?

Hors ligne

#2 Le 15/05/2016, à 06:22

J5012

Re : caractères spéciaux apache

reinstallé comment ? de zero ? ou par dessus ...
caracteres speciaux ?
s'affichent mal ? c'est à dire ?

Hors ligne

#3 Le 15/05/2016, à 09:59

shyfox0

Re : caractères spéciaux apache

réinstallé de 0 avec formatage de / mais pas de /home
mes caractères spéciaux s'affichent comme un losange noir avec un point d'interrogation

Hors ligne

#4 Le 15/05/2016, à 19:52

J5012

Re : caractères spéciaux apache

J5012 a écrit :

reinstallé comment ? de zero ? ou par dessus ...
caracteres speciaux ?
s'affichent mal ? c'est à dire ?

quels sont les carateres speciaux ?
c'est comme tu le decris un probleme d'encodage ascii ...

Hors ligne

#5 Le 15/05/2016, à 20:02

jplemoine

Re : caractères spéciaux apache

Je pense que ce sont des caractères type voyelles accentuées.
2 solutions :
- encoder les caractères : exemple : é => é
- forcer l'encodage à la "bonne valeur"
   - soit dans "l'entete" de la page
   - soit on doit pouvoir mettre une valeur pas défaut.

Il est possible que dans l'ancienne installation, il y ait eu une valeur par défaut et que dans la nouvelle, il n'y en ait pas ou qu'elle soit d'une valeur différente.


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#6 Le 15/05/2016, à 20:32

shyfox0

Re : caractères spéciaux apache

jplemoine a écrit :

Je pense que ce sont des caractères type voyelles accentuées.

ce sont bien des caractères type voyelle accentuée

jplemoine a écrit :

Il est possible que dans l'ancienne installation, il y ait eu une valeur par défaut et que dans la nouvelle, il n'y en ait pas ou qu'elle soit d'une valeur différente.

C'est ce que je pense mais je n'arrive pas à changer la valeur de l'encodage dans apache
J'ai essayé de modifier la directive dans apache de AddDefaultCharset dans /etc/apache2/conf-enabled/charset.conf mais ça ne fonctionne pas

Hors ligne

#7 Le 15/05/2016, à 20:35

J5012

Re : caractères spéciaux apache

alors dans le navigateur ... ou dans les meta de la page html/php

Hors ligne

#8 Le 15/05/2016, à 20:36

jplemoine

Re : caractères spéciaux apache

Je ne sais pas...
Je mets ça dans l'entête de la page


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#9 Le 15/05/2016, à 20:45

J5012

Re : caractères spéciaux apache

jplemoine a écrit :

Je ne sais pas...
Je mets ça dans l'entête de la page

on peut avoir ton code ?
normalement si la page n'indique pas au navigateur avec quel encodage l'afficher, il l'affiche avec le dernier utilisé ...

Hors ligne

#10 Le 15/05/2016, à 21:08

jplemoine

Re : caractères spéciaux apache

J'ai un truc comme ça :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <meta http-equiv="Content-Language" content="fr" />
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        ...

Si mes souvenirs sont bons, "charset=utf-8" permet d'indiquer au navigateur que le codage des caractères spéciaux est en UTF8. Il faut donc enregistrer les pages en UTF8.
On doit pouvoir mettre d'autres valeurs.


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#11 Le 15/05/2016, à 21:21

shyfox0

Re : caractères spéciaux apache

J5012 a écrit :

on peut avoir ton code ?

<head>
<meta http-equiv="Content-Type" content="text/HTML; charset=iso-8859-1" />
</head>
jplemoine a écrit :

Il faut donc enregistrer les pages en UTF8.

Problème résolu en convertissant les pages de iso-8859-1 vers UTF-8.
Merci.
Je ne comprends pas pourquoi cette version d'apache n'accepte pas le iso-8859-1.

Hors ligne

#12 Le 15/05/2016, à 21:46

J5012

Re : caractères spéciaux apache

c'est la "faute" à ton editeur ordinaire de pages :
par ex. avec gedit il est possible au choix d'enregistrer en iso ou en utf8

si c'est l'un et pas l'autre, tu auras beau mettre le bon charset, ca ne fonctionnera pas !

Hors ligne

#13 Le 15/05/2016, à 22:12

jplemoine

Re : caractères spéciaux apache

Et la solution d'encoder (je crois que c'est le terme exact) les caractères spéciaux ? bonne ou pas bonne ?
é --> &eacute;
è --> &egrave;
....


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#14 Le 15/05/2016, à 22:36

J5012

Re : caractères spéciaux apache

l'habitude d'encoder est super bonne : ca fait partie des bonnes manieres polies de reconnaitre l'importance des vieux navigateurs...

Hors ligne

#15 Le 15/05/2016, à 22:37

shyfox0

Re : caractères spéciaux apache

jplemoine a écrit :

Et la solution d'encoder (je crois que c'est le terme exact) les caractères spéciaux ? bonne ou pas bonne ?

Je pense que la solution est bonne mais fastidieuse (je peux plus tester maintenant que j'ai converti en UTF-8)

J5012 a écrit :

c'est la "faute" à ton editeur ordinaire de pages

J'utilise Kwrite, pas de problème de ce côté là

Hors ligne

#16 Le 15/05/2016, à 22:39

J5012

Re : caractères spéciaux apache

shyfox0 a écrit :
jplemoine a écrit :

Et la solution d'encoder (je crois que c'est le terme exact) les caractères spéciaux ? bonne ou pas bonne ?

Je pense que la solution est bonne mais fastidieuse (je peux plus tester maintenant que j'ai converti en UTF-8)

J5012 a écrit :

c'est la "faute" à ton editeur ordinaire de pages

J'utilise Kwrite, pas de problème de ce côté là

tu es certain que kwrite ne propose pas cette "solution" ?

edit : dans gedit les options d'encodage iso ou utf8 ou autre sont dissimulées dans les recoins de la boite de dialogue d'enregistrement ...

Dernière modification par J5012 (Le 15/05/2016, à 22:41)

Hors ligne

#17 Le 15/05/2016, à 23:06

shyfox0

Re : caractères spéciaux apache

jplemoine a écrit :

Et la solution d'encoder (je crois que c'est le terme exact) les caractères spéciaux ? bonne ou pas bonne ?
é --> &eacute;
è --> &egrave;

C'est cette solution d'encodage qui est fastidieuse.
J'ai pu convertir facilement de iso vers utf-8 avec Kwrite

Hors ligne

#18 Le 15/05/2016, à 23:08

J5012

Re : caractères spéciaux apache

tous les editeurs un peu sophistiques comme gedit , kwrite, etc savent faire un search replace en serie ...

Hors ligne

#19 Le 16/05/2016, à 10:32

bruno

Re : caractères spéciaux apache

Bonjour,

Tout d'abord l'encodage des caractères sous forme d'entités HTML : &acute; ou autres et à éviter à l'heure actuelle. Cela alourdi inutilement les pages et rend la lecture du code pénible. (Les entités restent utiles pour certaines choses comme &nbsp; ou &amp; dans les url).

Classiquement ce type de problème est dû à un fichier enregistré avec un jeu de caractère et servi avec un autre. L'exemple typique est un document HTML contenant charset=iso8859-1 dans son en-te mais enregistré depuis un éditeur en utf-8 : les caractères accentués apparaissent comme de petits losanges noirs avec un point d’interrogation. Dans le cas inverse (iso8859-1 affiché en utf-8) il apparaissent comme des é.



Pour éviter tout souci il vaut mieux travailler intégralement en UTF-8. Si l'on a récupéré un site fait en iso8859-1, on aura tout intérêt à prendre le temps de tout convertir en utf-8 :

- avec iconv pour convertir l'encodage des fichiers de iso8859-1 à utf-8
- avec des rechercher/remplacer pour remplacer les occurrence de iso8859-1 par utf-8 dans les en-têtes de fichiers (charste=iso8859-1 → charset=utf-8)


Concernant la directive AddDefaultCharset, il faut éviter de jouer avec… Par défaut cette directive est sur off, si on l'active  le jeu de caractère précisé sera forcé pour tous les documents quel que soit la valeur du jeu de caractère précisée dans les en-têtes des fichiers.

Hors ligne

#20 Le 18/05/2016, à 01:18

J5012

Re : caractères spéciaux apache

c'est sans doute le cas pour les fichiers redigés à quatre mains entre w et gnulinux wink

Hors ligne