Mon problème est très tordu et space, je l'admets.
Voici un script bidon, on l'appelera test.pl:
----- test.pl -----
#!/usr/bin/perl
use CGI;
my $q = new CGI;
print $q->header();
print "<HTML><BODY>TEST.PL > OK</BODY></HTML>\n";
-------------------
Si je mets ca dans mon cgi-bin et que je l'appelle, ca marche bien.
Voici maintenant un autre script, on l'apperal require.pl
----- require.pl -------
#!/usr/bin/perl
require "malibamoi.pl";
use CGI;
my $q = new CGI;
print $q->header();
print "<HTML><BODY>REQUIRE.PL > OK</BODY></HTML>\n";
------------------------
(malibamoi.pl se trouve dans le même répertoire que require.pl)
Ce second script ne passe pas, car il nécessite un autre script.
Perl va le rechercher dans la liste contenu dans @INC.
Cette liste contient . (répertoire courant), or, malibamoi.pl est bien dans ce répertoire, donc ce ne devrait pas poser de problème. Malheuresement, quand Apache execute le script, le répertoire courant n'est pas celui du script, donc le . correspond pas au bon repertoire, donc il ne trouve pas la lib, donc erreur, pour Apache, une 500.
C plus clair (au fait je suis sous Mdk, mais j'ai tout réinstaller à partir de source) ?
Sinon, pour ce qui est de la discution sur les répertoire /var/...
je suis d'accord pour dire que c'est bidon de mettre ses fichiers web dans cette branche, mais ce sont les répertoires par défaut de l'installation de certaines distrib d'apache (sur la Mdk, c'est comme ca, mais bon, ca se change)
LELFE