У меня есть веб-сервер, работающий на Nginx http://192.168.x.x и модуль Perl устанавливается с помощью http://nginx.org/en/docs/http/ngx_http_perl_module.htmlNginx Perl модуль с LWP :: UserAgent
мне нужно сделать запрос GET внутри этого модуля с помощью LWP. Это то, что у меня есть:
my $url = "http://192.168.x.x/app/test.php";
my $ua = LWP::UserAgent->new;
$ua->timeout(5); # muere a los 5 segundos sin respuesta.
$ua->default_header('Cookie' => "FOO=BAR;PATH=/");
my $resp = $ua->get($url);
if ($resp->is_success) {
my $message = $resp->decoded_content;
print STDERR "Received reply: $message\n";
} else {
print STDERR "HTTP GET error code: ", $resp->code, "\n";
print STDERR "HTTP GET error message: ", $resp->message, "\n";
};
Каждый раз, когда я делаю этот запрос, я получаю код ошибки 500: время ожидания чтения. Но если я использую другой сервер, все работает отлично. Проблема в том, что я использую тот же сервер, где я запускаю скрипт.
Почему вы вызываете скрипт php? Где находится журнал ошибок веб-сервера? Обычно, когда происходит 500, вы получаете некоторую запись в журнале ошибок. Что делает PHP-скрипт для интеграции с perl? –
этот фрагмент кода является частью подпрограммы, которую я использую в качестве обработчика в директиве perl_set. Мне нужно вызвать php-скрипт на том же сервере, чтобы получить некоторые данные. В журнале нет ошибки msg ... :( –