所以,我正在编写一个代码来从互联网上获取文档。文档大小约为200 KB。这是代码:
#!/usr/local/bin/perl -w
use strict;
use LWP::UserAgent;
my $ua = LWP::UserAgent->new;
my $url = "SOME URL";
my $req = HTTP::Request->new(GET => $url);
my $res = $ua->request($req);
if($res->is_success){
print $res->content ."\n";
}
else{
print "Error: " . $res->status_line;
}
现在,唯一的问题是我不能提到URL是什么。
但是,输出为:“错误:500读取超时”。当我从外部检查链接时,数据将在5秒内下载。
我甚至将超时更改为1000秒,但仍然无法正常工作。我该如何查找有关响应的更多信息?文件大小(大约200KB)也不足以保证读取超时。服务器也不繁忙,每当我检查浏览器上的链接时都没有出现问题。
感谢。
答案 0 :(得分:0)
确保未将webserver配置为在此情况下从脚本中删除请求。
答案 1 :(得分:0)
当网络应用程序给您带来麻烦时,debug using Wireshark。
答案 2 :(得分:0)
Web服务器(Apache / nginx)可能有一个用PHP / Python /编写的后端应用程序。可能后端没有回答任何问题,因此Web服务器停止等待(达到超时)并在http请求{@ 3}}上回答您。
一个很棒的测试工具是curl
-v
:
curl --verbose --head "SOME URL"
--head
仅获取http响应标头。-s
(无声)和2>&1
至to curl with -H, --header <header>
至less / head / tail。