Ich habe eine apache2 Config-Datei unter/etc/init.d/apache2/conf.d/ welche Perl Abschnitte verwendet.Apache mod_perl2 Migrationsproblem
Ich versuche nur zu testen, ob ein Modul geladen ist und Apache entsprechend konfigurieren.
if(Apache->module("mod_ssl.c"))
{
...
} else { ... }
Dies ist der Fehler, den ich beim Neustart sehe. Ich habe auch die Apache2-> Methode ausprobiert, bekomme aber denselben Fehler.
# /etc/init.d/apache2 restart Neustarten Webserver: apache2Building Appliance-Konfiguration für Debian 5.0.7 Syntaxfehler auf der Leitung 73 von /etc/apache2/conf.d/foobar.conf: \ t (in Aufräumen) Objektmethode "Modul" kann nicht über das Paket "Apache" gefunden werden (vielleicht hast du vergessen "Apache" zu laden?) in der Zeile /etc/apache2/conf.d/foobar.conf Zeile 357. \ n ist fehlgeschlagen !
Ich glaube nicht, dass es ein @ INC Problem ist ... Und Apache und libapache2-mod-Perl2-Pakete sind beide installiert. In der Tat, wenn ich diese Zeile kommentieren, läuft der Rest der Perl tatsächlich gut.
perl -e 'print join "\n",@INC'
/etc/perl
/usr/local/lib/perl/5.10.0
/usr/local/share/perl/5.10.0
/usr/lib/perl5
/usr/share/perl5
/usr/lib/perl/5.10
/usr/share/perl/5.10
/usr/local/lib/site_perl
Ich habe auch versucht, den Apache mit :: compat und "Apache2-> Modul".
Ich vermute, das Problem ist etwas in startup.pl fehlt - aber ich habe googeln und lesen die Mod-Perl-Dokumente und im Kreis herumgehen. Irgendwelche Vorschläge stackoverflow ???
BTW mein startup.pl:
#!/usr/bin/perl -w
use strict;
use lib qw(/usr/lib/perl5/ /usr/lib/perl5/Bundle /usr/lib/perl5/Apache2) ;
BEGIN
{
use Apache2();
my $hostname = `hostname`;
}
use Apache;
use Apache::DBI();
use Apache2::Const();
use Apache2::Log();
use Apache2::URI();
use Apache2::compat;
use LWP::UserAgent();
use DBI() ;
1;