Я пытаюсь использовать модуль Tenjin, но он не работает, потому что он не может найти файл шаблона, но он существует. Я добавил несколько отладочных операторов в модуль, и он не передает
return $filepath if (-f $filepath);
, даже если $ filepath указан правильно. Я пробовал в автономном скрипте, и он отлично работает, но когда я копирую его в скрипт mod_perl, это не удается. Есть идеи?
$ filepath - это полный абсолютный путь: /something/another/dir/2/filename.plhtml
Это функция из модуля. Обратите внимание на мой «Debug» ... он печатает правильный путь к файлу 777, но никогда не печатает YES.
sub find_template_file {
my ($this, $filename) = @_;
my $path = $this->{path};
if ($path) {
my $sep = $^O eq 'MSWin32' ? '\\\\' : '/';
foreach my $dirname (@$path) {
my $filepath = $dirname . $sep . $filename;
print STDERR "--$filepath--\n";
if (-f $filepath){
print STDERR "--- YES ---\n\n";
}
return $filepath if (-f $filepath);
}
} else {
return $filename if (-f $filename);
}
my $s = $path ? ("['" . join("','", @$path) . "']") : '[]';
die "Tenjin::Engine: $filename not found (path=$s).";
}
Сбой с
Tenjin :: Engine: index.plhtml не найден (путь = ['/ var / 2.0 / templates / search']). в /usr/lib/perl5/site_perl/5.8.8/Tenjin/Engine.pm строка 56. \ n