Хорошо, так же, как я действительно не потворствую помещению сервера для сна, проверяю следующее
Если Вы не можете найти установку там, зарегистрируйтесь в следующем местоположении:
Ответ, оказалось, зависел от информации, не существующей в моем вопросе — но dtruss
вывод должен был быть большой подсказкой!
У меня есть a PerlMapToStorageHandler Apache2::Const::OK
директива в моей апачской конфигурации согласно предложению в mod_perl документации. Это - установка всего хоста, и она препятствует тому, чтобы апач звонил ap_directory_walk()
и stat()
луг набор файлов каждый раз это получает запрос. Это желательно, когда все Ваши URIs являются "виртуальными" (т.е. не соответствуйте реальным файлам на диске), но это также означает, что Вы не можете служить никаким статическим файлам!
Мое решение состояло в том, чтобы создать пользовательское PerlMapToStorageHandler
стандартная программа, которая избегает stat()
призывы к каждому файлу кроме того я хочу служить:
package MyMapToStorageHandler;
use strict;
use Apache2::RequestRec();
use Apache2::Const -compile => qw(DECLINED OK M_TRACE);
sub handler {
my $r = shift;
# Fall through to the default handling for TRACE requests and requests
# for the index.html file.
if ($r->method_number == Apache2::Const::M_TRACE || $r->uri eq '/index.html') {
return Apache2::Const::DECLINED;
}
# Skip ap_directory_walk stat() calls by just returning OK
return Apache2::Const::OK;
}
1;
Затем в моем httpd.conf
файл я заменил свое существующее PerlMapToStorageHandler Apache2::Const::OK
директива с этим:
PerlLoadModule MyMapToStorageHandler
...
PerlMapToStorageHandler MyMapToStorageHandler
Это добилось цели.