Changer la police par défaut de Apache2 - sous Kubuntu 5.10 (pour serveur web)

:hello: tout le monde :smiley:

Alors voici mon souci: je viens d’installer Kubuntu 5.10 pour remplacer la Mandrake 10 du serveur web du lycée. (donc avec phpmyadmin + mysql)

Jusque là tout va bien sauf que les polices affichées ne sont pas correctes … :paf:

Plutot qu’un long discours, un screenshot:

Pas très sérieux :confused: (j’ai volontairement masqué l’adresse, le site étant en bidouille :paf: )

Donc, je sèche bien là. Je ne sais pas d’où peut venir le problème.
Les caracteres accentués ne sont pas correctement affichés lors d’une session SSH sous Windows. Autre souci également.
Même en local, le site le fonctionne pas correctement, étrange.

Je vous pose donc la question: comment changer ca ? :ane: c’est relativement urgent :confused:

D’avance merci pour votre aide :jap:

Phil qui poste sur OSA, une première :ane:

C’est un problème d’encodage des caractères.

Sur la page web, il doit manquer la ligne du type :
<meta http-equiv="content-Type" content="text/html;CHARSET=iso-8859-1" />

Quand cette ligne est absente, le navigateur choisit l’encodage du système, donc pour une kubuntu ça doit être utf8.

Dans Firefox, va dans Affichage, puis Encodage des caractères, et change l’encodage, tu verras que ça résolvera le problème :wink:
Et pour résoudre le problème quelle que soit la machine, faut rajouter le meta content-Type :wink:

Non, c’est tout sauf une premiere :ane: mais j’ai tellement rarement des problemes liés à linux que c’est rare que je poste ici :ane:

Donc, il faut que je modifies toutes les pages ? [:kurdent]
Le truc, c’est que ca marchait très bien sous mandrake, donc ca devrait aussi marcher avec Kubuntu, nan ? y’a pas un truc à voir directement dans apache2 pour changer l’encodage, pour que je n’ai pas à aller bidouiller toutes les pages, parce que y’en a un sacré très gros paquet :paf:

Au fait, ta signature est fausse :o je viens de voir :ane:
Le "t" à la fin de weiß, ca pique les yeux [:kend]

Non parce que mandrake est par défaut en iso-8859-1, alors qu’ubuntu est en utf8 :wink:

Donc si le site a été fait sous mandrake, il est en iso-8859-1.

Arg, désolé pour la signature [:kurdent] Je corrige ça tout de suite :o

waou, refaire toutes les pages ? :paf: :confused:

Y’a vraiment aucun autre moyen ? [:peur]

Non, tu rajoutes juste la ligne que je t’ai donnée, pas la peine de tout refaire :wink:

Si vraiment tu veux passer tout le site en utf8, tu fais ça :

apt-get install recode
cd /var/www/... (chemin du site :o )
find . -iname "*html?#34; -exec recode latin1..utf8 {} \;

(?#34 = " , je ne sais pas pourquoi cette quote ne passe pas :o )

(vérifie avant quand même que c’est bien du iso8859-1, et sauvegarde ton site, on ne sait jamais :o )

je viens de voir, en fait, le site ne passe pas en utf8 alors qu’il passe en ISO 8859-1 … :heink:

Il faut que je fasse un recode en ISO 8859-1 alors ?
Parce que là, j’ai pas tout compris :paf:

Non, ça veut dire que les fichiers sont au format iso8859-1.

Donc, les deux possibilités sont :

  1. mettre <meta http-equiv="content-Type" content="text/html;CHARSET=iso-8859-1" /> dans toutes les pages html

ou
2. faire un recode latin1…utf8 et mettre <meta http-equiv="content-Type" content="text/html;CHARSET=utf8" /> dans toutes les pages html

Ce qu’il faut bien voir, c’est que si un PC accède à ton site et qu’il n’utilise pas le même encodage que ta page, si tu ne mets pas cette balise, ça va merder :confused:

en même temps, je n’ai pas le temps d’ajouter cette balise dans toutes les pages, y’en a des tonnes :confused:

Merci :jap:

Il y a peut-être moyen de faire un script qui la rajoute tout seul…

Vais réfléchir à ça, en perl ça doit se faire vite :o

ok :o

Tu penses que tu peux faire le script d’ici cette aprem ? [:shy] avant 14h ? [:shy]

1/2 heure ?

Vais tenter, mais je ne te promets rien :paf:

si jamais tu arrives, ce serait supayr :smiley: :jap:

On a encore 78000 truc à faire, le coup du serveur web à refaire, ce n’était vraiment pas prévu :nexath

Au fait, dans /etc/apache2/apache2.conf, j’ai trouvé cette ligne :

AddDefaultCharset UTF-8

Essaie de la changer en mettant ISO-8859-1 à la place d’UTF-8 :wink:

Bon, vais bosser sur le script :smiley:

J’essaie ca dès que je suis au lycée :jap: (mais pourquoi je n’ai pas pensé à regarder là plus tot ? :paf: )

Concernant le script, si jamais tu arrives à faire quelque chose, tu peux me l’envoyer à `mon pseudo`@wanadoo.fr :jap: (je ne sais pas si je passerai sur clu²)

Edit: j’suis parti :hello:

Merci pour l’aide et pour le script, je regarderai de temps en temps mes mails et je repasse sur Clu² après le taff :smiley: :jap:

État du script pour l’instant :
(ça marche seulement quand il y a une balise <head> dans le fichier html)

#!/usr/bin/perl

use strict;

use File::Find;

my $string = "<meta http-equiv=\"content-Type\" content=\"text/html;CHARSET=iso-8859-1\" />";

sub wanted() {
        print $File::Find::name . "\n";
        if($_ =~ /.html+$/i) {
                print "ok\n";
                open(fic, "$_");
                my @srt = ();
                my $i=0;
                while(my $line = <fic>) {
                        my $modif=0;
                        if($line =~ /<head>/i) {
                                if($line =~ /<head>\s*$/i) {
                                        $srt[$i++] = $line;
                                        $srt[$i++] = "$string\n";
                                        print "modif effectuée : type 1\n";
                                        $modif=1;
                                }
                                else {
                                        $line =~ s/<head>/<head>$string/i;
                                        $srt[$i++] = $line;
                                        print "modif effectuée : type 2\n";
                                        $modif=1;
                                }
                        }
                        else {
                                $srt[$i++] = $line;
                        }
                }
                close(fic);
                open(fic2, ">$_");
                print fic2 @srt;
                close(fic2);
        }
}

while(my $rep = shift(@ARGV)) {
        find(\&wanted, $rep);
}

Spa bientot fini ce dialogue de chats :o
Et Asbel qui refourgue ses scripts perl :lol:

Ça me fait de l’entraînement :o L’examen médian est dans deux semaines :o

Mais si ça se trouve, la modification de la config d’apache suffit :slight_smile:

ouais, la modification de la config d’apache suffit pour que ca remarche :oui:

Merci quand meme, cay sympa :super:

Ok, nickel :smiley:

Désolé pour le flood sur ta boîte mail au fait :ane: