2014-01-08 2 views
0

urllib2을 사용하여 페이지를 열려고하는데 연결 시간 초과 오류가 계속 발생합니다.Python urllib2 오류

url = "http://" + "100.12.13.11/api.php" 
f = urllib2.urlopen(url) 

나는 두 개의 정적 IP를 가지고 : 100.12.13.12, LAN IP - 10.10.209.2을, 도메인 - test.com; 및 100.12.13.11, LAN IP-10.10.209.1, 도메인 -test2.com.

내가 100.12.13.12urllib2를 사용하여 한 번에 서버에서

http://100.12.13.11/api.php 

에 액세스 할 때 연결 시간 초과 오류를 말한다.

또한 나는 예를 들어, 도메인을 사용하는 경우

같은 일이 발생하지만 난 LAN IP를 사용할 때마다 그것은

http://10.10.209.1/api.php 

(정적 IP가 모두 동일한에 작동

http://test.com/api.php 

네트워크)

네트워크 외부에서 액세스 할 때마다 문제가 발생하지 않습니다. 하지만 PHP에서는 도메인 이름, 고정 IP 및 LAN IP에서 작동합니다.

왜이 이상한 일이 일어나는 지 아는 사람이 있습니까?

+0

문제를 더 자세히 설명해 주시겠습니까? 나는 "서버"가 파이썬 문제를 지적하기 전에 "클라이언트"로부터의 연결을 받아들이는 것을 어떻게 테스트했는지 이해하지 못한다. 또한 예제는 작동하지 않을 수 있습니다. 따옴표와 (아마도) "http : //"접두사가 없어서 urllib2는 사용할 포트와 프로토콜을 알고 있습니다. – Cilyan

+0

나는 이미 http : //를 사용하고 있지만 응답하지는 않지만 다른 프로그래밍 언어로 같은 URL에 접근한다. 예를 들어 PHP가 작동한다. – senthilnathang

답변

1

일반적으로 LAN은 글로벌 IP 또는 로컬로 호스팅되는 도메인에 대한 로컬 액세스를 허용하지 않습니다. 해결책은 로컬 호스트 이름을 로컬 DNS의 로컬 IP에 매핑하는 것입니다.