RewriteRule avec perl !

Nouveau WRInaute
RewriteMap site prg:/var/www/dossier/essai.pl
RewriteRule /(.+) ${site:$1}

le script perl renvoi une page web aleatoire (il fonctionne je l'ai bien tester)
mais le problème c'est que la réécriture ne s'active pas lorsque je tape l'adresse mais seulement après un ou deux rafraichissement
et je me suis aperçu que c'etait le RewriteMap qui ne renvoyait pas la bonne adresse du premier coup.
alors je me demande si il n'y aurai pas une sorte de buffer sur les I/O en Perl (un peu comme en C).

La je suis vraiment bloquer et je ne comprend plus rien.
 
WRInaute occasionnel
Tiré de la doc mod_rewrite, section External Rewriting Program :
Avoid one common mistake: never do buffered I/O on stdout! This will cause a deadloop! Hence the ``$|=1'' in the above example...
et le bout de Perl devrait ressembler à
Code:
#!/usr/bin/perl
$| = 1;
while (<STDIN>) {
    # ...put here any transformations or lookups...
    print $_;
}
 
Nouveau WRInaute
nan mon script perl est bon.
enfin du moins cette ligne la sert à ne pas proteger les I/O si j'ai bien compris.
mais la ce n'est pas ca la pb. y a un décalage.
Lorsque j'execute le script independement, il n'y a pa d'erreur
mais quand il est execute avec apache ya un decalage et faut rafraichir 1 ou 2 fois avant que la page ne se change.
 
Discussions similaires
Haut