Meu palpite é que você tem /usr/bin/perl (Perl v5.8.8) com bibliotecas armazenadas em /usr/lib/perl5/site_perl/5.8.8/… e, em seguida, você também tem /usr/local/bin/perl (Perl v5.13.9) com bibliotecas armazenadas em /usr/local/lib/perl5/site_perl/5.13.9/… . Quando você atualizou File::Spec , atualizou a versão usada por /usr/local/bin/perl , mas /usr/bin/perl ainda está usando a versão antiga.
Você deve atualizar a versão de File::Spec usada por /usr/bin/perl ou fazer o Apache usar /usr/local/bin/perl .
Para atualizar a versão usada por /usr/bin/perl , você pode usar
/usr/bin/perl -MCPAN -we 'CPAN::Shell -> install("File::Spec")'
Eu não tenho muita experiência com o Apache, mas tenho certeza de que existem várias maneiras de usar /usr/local/bin/perl . Você pode tentar colocar /usr/local/bin antes de /usr/bin na variável de ambiente PATH , mas isso pode ter outras consequências, no entanto.