DB_File.pm выдает следующую ошибку:
AH00094: Командная строка: '/ usr / sbin / httpd -D FOREGROUND' Аргумент "/ home / epri ..." не числовой взапись подпрограммы в /usr/lib64/perl5/vendor_perl/DB_File.pm строка 287, строка 4. в /usr/lib64/perl5/vendor_perl/DB_File.pm строка 287, строка 4.
Я не уверенпочему это происходит.
Я нахожусь в процессе сертификации моего приложения CGI с CentOS7.В настоящее время он отлично работает с CentOS6.Делая приложение совместимым с CentOS7, я сделал несколько изменений, в основном установив отсутствующие модули perl.
Подпрограмма, в которой возникает ошибка, выглядит следующим образом: "
require Tie::Hash;
sub tie_hash_or_array
{
my (@arg) = @_ ;
my $tieHASH = ( (caller(1))[3] =~ /TIEHASH/ ) ;
use File::Spec;
$arg[1] = File::Spec->rel2abs($arg[1])
if defined $arg[1] ;
$arg[4] = tied %{ $arg[4] }
if @arg >= 5 && ref $arg[4] && $arg[4] =~ /=HASH/ && tied %{ $arg[4] } ;
$arg[2] = O_CREAT()|O_RDWR() if @arg >=3 && ! defined $arg[2];
$arg[3] = 0666 if @arg >=4 && ! defined $arg[3];
# make recno in Berkeley DB version 2 (or better) work like
# recno in version 1.
if ($db_version >= 4 and ! $tieHASH) {
$arg[2] |= O_CREAT();
}
if ($db_version > 1 and defined $arg[4] and $arg[4] =~ /RECNO/ and
$arg[1] and ! -e $arg[1]) {
open(FH, ">$arg[1]") or return undef ;
close FH ;
chmod $arg[3] ? $arg[3] : 0666 , $arg[1] ;
}
DoTie_($tieHASH, @arg) ; # this is the line where i see the error
# isn't numeric in subroutine entry at
}
Если кто-то перенес свои приложенияот centOS6 до CentOS7 и столкнулся с подобной проблемой, пожалуйста, дайте мне знать, если есть какое-либо решение для этого.