2014-12-15 3 views
1

우리 프록시가 작동하는지 여부를 Perl 스크립트로 확인하고 싶습니다. 나는 컬 명령으로 우리의 프록시를 테스트는 예상대로 일 :curl과 perl을 사용하는 프록시

curl -x 'http://our_proxy:port' -v 'http://www.some_adult_site.com' 

을이 와이어 샤크에서 TCP 스트림 출력 다음 날 제공 :

GET http://www.some_adult_site.com/ HTTP/1.1 
User-Agent: curl/7.35.0 
Host: www.some_adult_site.com 
Accept: */* 
Proxy-Connection: Keep-Alive 

나는 때 나의 펄 스크립트 :

#!/usr/bin/perl 

use LWP::UserAgent; 
use warnings; 

# forbidden URL 
$forbidden_url = URI->new('http://www.some_adult_site.com/'); 

# user agent to use a proxy 
$user_agent = LWP::UserAgent->new; 
$user_agent->proxy('http', 'http://our_proxy:port/'); 

# request 
$req = HTTP::Request->new(GET => $forbidden_url); 

# response 
$res = $user_agent->request($req); 

print $res->content; 
나는 다음과 같은 TCP 스트림으로 404 찾을 수 없음 페이지를받을

GET http://www.some_adult_site.com/ HTTP/1.1 
Host: www.some_adult_site.com 
User-Agent: libwww-perl/6.05 

이것이 작동하지 않는 이유가 있습니까?

+1

) 'agent'를'curl/7.35.0'으로 설정해 보았습니까? – choroba

+0

대단히 감사합니다! :)) 당신이 대답을 쓸 수 있도록 받아 들일 수 있습니까? –

답변

2

프록시 또는 사이트에서 일부 사용자 에이전트를 거부 할 수 있습니다. 요청하기 전에 에이전트를 말리도록 설정하십시오 (

$user_agent->agent('curl/7.35.0'); 
관련 문제