Accéder au contenu.
Menu Sympa

fr - Re: [sympa-fr] Re: Problème pièce jointe avec accent dans le nom du fichier en mode urlize

Objet : Pour les administrateurs de serveurs de listes utilisant le logiciel Sympa

Archives de la liste

Chronologique Discussions  
  • From: Jean-Claude VERGEROLLE <adresse@cachée>
  • To: David Verdin <adresse@cachée>
  • Cc: adresse@cachée
  • Subject: Re: [sympa-fr] Re: Problème pièce jointe avec accent dans le nom du fichier en mode urlize
  • Date: Thu, 26 Nov 2009 17:02:58 +0100

Bonjour,

Je reviens sur mon petit problème.
Voici la situation

J'envoie un mail avec la pièce jointe Fichiertrèssensibleàécrire.doc

Le problème sur vient seulement avec des accents. Un fichier dont le nom contient des espaces ne pose pas problème.

L'abonné reçoit le mail avec le lien suivant :

http://adresse@cachée/Fichiertr%e8ssensible%e0%e9crire.doc

A la première tentative, il clique sur le lien, il obtient une erreur donc et dans les logs de sympa on a :

//Nov 24 15:28:15 tiberedev wwsympa[27829]: [robot listestest.u-bordeaux2.fr] [client 10.253.1.2] [list test_jc] main::do_redirect() do_redirect(https://cas.u-bordeaux2.fr:443/login?service=http://adresse@cachée/Fichiertr%E8ssensible%E0%E9crire.doc?checked_cas=0&gateway=1)
Nov 24 15:28:15 tiberedev wwsympa[27829]: [robot listestest.u-bordeaux2.fr] [client 10.253.1.2] [list test_jc] main::do_attach() do_attach(adresse@cachée,Fichiertrèssensibleàécrire.doc)
Nov 24 15:28:15 tiberedev wwsympa[27829]: [robot listestest.u-bordeaux2.fr] [client 10.253.1.2] [list test_jc] main::do_attach() do_attach : unable to read /adresse@cachée/Fichiertrèssensibleàécrire.doc : no such file or directory/ /

A la deuxième tentative, il clique sur le lien, il obtient le fichier et dans les logs de sympa on a:

/Nov 24 15:30:58 tiberedev wwsympa[27829]: [robot listestest.u-bordeaux2.fr] [client 10.253.1.2] [list test_jc] main::do_attach() do_attach(adresse@cachée,Fichiertr?ssensible??crire.doc)

Il n'y a plus de redirect ce qui est normal mais on n'a pas la même chaine /main::do_attach()...

Comme mes utilisateurs commençaient à sérieusement tousser, j'ai dû trouver une solution rapide.
J'ai donc apporté une petite au script wwsympa.fcgi

Pour cela, je me suis inspiré du post de Julien Pedrono [Question d'encodage]
https://listes.cru.fr/sympa/arc/sympa-fr/2009-10/msg00032.html

En attendant mieux, voici les résultats de mes cogitations

/ --- wwsympa.fcgi 2009-11-26 16:42:20.000000000 +0100
+++ wwsympa.fcgi.orig 2009-11-25 12:22:14.000000000 +0100
@@ -95,9 +95,7 @@
my $conf_file = '/etc/sympa/wwsympa.conf';
my $sympa_conf_file = '/etc/sympa/sympa.conf';

-# BEGIN UBX2
-my $ubx2_redirect = '';
-# END UBX2
+

my $loop = 0;
my $list;
@@ -2952,11 +2950,6 @@

sub do_redirect {
($Log::log_level >= 0) && &wwslog('info','do_redirect(%s)', $param->{'redirect_to'});
-
- # BEGIN UBX2
- $ubx2_redirect = $param->{'redirect_to'};
- # END UBX2
- print "Location: $param->{'redirect_to'}\n\n";
$param->{'bypass'} = 'extreme';
return 1;
@@ -15584,25 +15577,13 @@

# current list / current shared directory
my $list_name = $list->{'name'};
+
# path of the urlized directory
my $urlizeddir = $list->{'dir'}.'/urlized';

# document to read
my $doc = $urlizeddir.'/'.$in{'dir'}.'/'.$in{'file'};

- # BEGIN UBX2
- if ( $ubx2_redirect ne '') {
-
- ($Log::log_level >= 0) && &wwslog('info','UBX2 PATCH : REDIRECT = %s',$ubx2_redirect);
- ($Log::log_level >= 0) && &wwslog('info','UBX2 PATCH : REDIRECT NON VIDE DONC DECODE(utf8) ET ENCODE(latin1)');
- $doc = &Encode::decode('utf-8', $doc);
- $doc = &Encode::encode('iso-8859-1', $doc);
-
- $ubx2_redirect = '';
-
- }
- # END UBX2
-
### Document exist ?
unless (-e "$doc") {
($Log::log_level >= 0) && &wwslog('info',"do_attach : unable to read $doc : no such file or directory");

/Je suis ouvert à toutes les propositions

Merci d'avance
Cordialement

David Verdin a écrit :
Bonjour,

Je n'arrive pas à reproduire votre problème. À conditions égales, même version de Sympa, les fichiers sont téléchargés sans problème, que l'on soit connecté ou pas, avec ou sans diacritiques ou espaces dans le nom.
S'il s'agit d'une mise à jour récente de Sympa vers la 5.4.7, vous devriez vérifier que les fichiers utilisés par Sympa sont bien encodés en UTF-8, en particulier urlized_part.tt2 qui réalise l'inclusion du lien vers le ficheirs àç télécharger.

Cordialement,

David Verdin

Jean-Claude VERGEROLLE a écrit :
Une lecture un peu plus soutenue de la doc m'a apporté un début de réponse.
En effet j'ai vu le paramètre web_archive_spam_protection qui est par défaut à cookie.

Cela explique bien le comportement, lorsque les fichiers ont un accent ou un espace dans leur nom.

Par contre je ne m'explique pas le fait que tout marche sans problème avec un fichier standard (sans accent et sans espace).




Jean-Claude VERGEROLLE a écrit :
C'est encore moi
Un petite précision de plus :
Ce comportement n'a pas lieu si le fichier a un nom "standar" i.e sans accent et sans espace.

Jean-Claude VERGEROLLE a écrit :
Re Bonjour,
Voici quelques précisions :
Il semble que ce soit un problème de cookies

En effet
- l'abonné ouvre le navigateur
- il va sur la page d'accueil de sympa sans se connecter
- il va dans sa messagerie
- il clique sur le lien il obtient la pièce jointe
- il garde son navigateur ouvert
- il supprime juste les cookies de sympa
- il clique sur le lien et il obtient l'erreur

Si quelqu'un a une explication et pourquoi pas une solution je suis preneur

Jean-Claude VERGEROLLE a écrit :
Bonjour à tous,

Contexte :
- sympa 5.4.7 cassifié cas V2
- liste modérée avec archive en accès public
- réception urlize

Problème
Les membres authentifiés récupèrent sans problème les pièce jointes
Alors que les non authentifiés ont l'erreur suivante :
ERREUR (attach) - adresse@cachée/note technique sur clôture budgétaire exercice 2009.doc : fichier ou répertoire inexistant
Dans les logs de sympa on a :
main::do_attach() do_attach : unable to read /var/sympa/expl/jefyco_util/urlized/4B066B01.201020
adresse@cachée/note technique sur clôture budgétaire exercice 2009.doc : no such file or directory

La commande ls -l sur le serveur donne:

-rw-r----- 1 www softs 73762 Nov 20 11:39 note technique sur cl?ture budg?taire exercice 2009.doc


Merci d'avance
Cordialement










--
Jean-Claude Vergerolle
Centre de Ressources Informatiques
Université Victor Segalen Bordeaux 2
146, Rue Léo Saignat
33076 - Bordeaux Cedex

Tel: 05 57 57 15 03
Fax: 05 57 57 45 42




Archives gérées par MHonArc 2.6.19+.

Haut de le page