2012-10-24 2 views
0

리눅스 서버에 PHP 웹 사이트가 있습니다. 나는 서비스 게이트웨이를 연결하기 위해 nusphere 웹 사이트의 nusoap 기능을 사용하고 있습니다. 몇 달 동안 아무런 문제가 없었지만 최근에는 다음과 같은 오류가 발생했습니다.Wsdl 컬 오류 7 : 호스트에 연결할 수 없습니다.

Error: wsdl error: Getting https://www.something.com:27635/eservice.asmx?wsdl - HTTP ERROR: cURL ERROR: 7: couldn't connect to host 

내 리눅스 호스트 서버에 접촉 아래 27635. 하고는 연결이 괜찮아 보인다 결과

[email protected] [~]# telnet www.something.com 27635 
Trying 212.80.nn.nn... 
Connected to www.something.com (212.80.nn.nn). 
Escape character is '^]'. 
Connection closed by foreign host. 

[email protected] [~]# wget https://www.something.com:27635 
--2012-10-23 10:54:46-- https://www.something.com:27635/ 
Resolving www.something.com... 212.80.nn.nn 
Connecting to www.something.com|212.80.nn.nn|:27635... connected. 
HTTP request sent, awaiting response... 200 OK 
Length: 4740 (4.6K) [text/html] 
Saving to: `index.html.1' 

입니다 텔넷의 주소와 포트를 요청합니다.

많은 감사.

+0

명령 줄에서 wget을 시도했습니다. 그러나 말풍선처럼 커맨드 라인에서 말리십시오. 또한 PHP 내부에서 몇 가지 말풍선도 있습니다. PHP 내부에서만 작동하지 않을 수도 있습니다. 문제 해결을 위해 자세한 옵션을 사용하십시오. 말림 오류를 확인하는 것 외에도 일반적으로 장면 뒤에서 일어나는 일을 알려줌으로써 문제를 정확하게 지적합니다. – hakre

+0

테스트 결과가 동일하지 않습니다. 웹 서버는 같은 서버의 다른 URL에있는 하나의 특정 URL과 barf를 행복하게 제공 할 수 있습니다. 귀하의 wget 테스트는 서비스 사이트의 루트 페이지를 가져오고 curl로 시도한 서비스 URL은 가져 오지 않습니다. –

+0

Telnet과 wget은 내 호스트 사람들이 서버에서 실행하는 명령입니다. curl 문에 익숙하지 않아서 내 eservice에 연결하기위한'nusoap' 표준 프로그램을 사용하고 있습니다. PHP 프로그램에서 curl 디버그를 켜려면 자세한 옵션을 어떻게 사용할 수 있습니까? –

답변

0

마침내! 나는 해결책을 찾았다.

몇 주 전에 gzip 압축을 사용하기 위해 PHP 프로그램을 일부 변경했습니다.

프로그램의 시작 부분에 ob_start("ob_gzhandler")을 삽입했지만 그 끝에 ob_flush()을 넣는 것을 잊어 버렸습니다.

따라서 중첩 된 출력 버퍼링이있었습니다.

CURL을 사용하는 WSDL eservice 프로그램을 제외한 모든 프로그램에 문제가 없었습니다.

컬 오류 7 또는 28이 발생했습니다.