2017-10-03 1 views
0

Windows에서는 완벽하게 작동하지만 Linux에서는 작동하지 않습니다.Windows 7에서는 컬이 작동하지만 CentOS에서는 작동하지 않습니다.

:

$url = 'some_url'; 
$curl = curl_init(); 
curl_setopt_array($curl, array(
    CURLOPT_URL => $url, 
    CURLOPT_RETURNTRANSFER => true, 
    CURLOPT_ENCODING => "", 
    CURLOPT_MAXREDIRS => 10, 
    CURLOPT_TIMEOUT => 30, 
    CURLOPT_SSL_VERIFYPEER => 0, 
    CURLOPT_SSL_VERIFYHOST => 0, 
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, 
    CURLOPT_CUSTOMREQUEST => "POST", 
    CURLOPT_HTTPHEADER => array(
    "content-type: application/json" 
) 
)); 

$response = curl_exec($curl); 
$err = curl_error($curl); 

curl_close($curl); 

특별한 설정이 거기인가 "컬 : 피어 (35) TCP 연결 재설정"

이 오류가있어?

방화벽을 해제했지만 동일한 오류가 발생했습니다. 어떤 생각을 시도해 볼까요?

답변

0

ssl 버전에 문제가있었습니다. 내가 찾은으로 "CURLOPT_SSLVERSION => 1"로

잘 작동 :

  • SSLv2의이 7.18.1 때문에 기본적으로 비활성화되어 있습니다. 다른 SSL 버전의 가용성은 백엔드 libcurl이 사용하도록 만들어진 지에 따라 달라질 수 있습니다.

  • SSLv3은 기본적으로 7.39.0부터 비활성화되어 있습니다. 리눅스에 컬의

내 버전은 그가 SSLv3에 함께 노력하고 그 문제의 원인이 기본적으로 그래서 (윈도우 7.55.1에) 7.29.0입니다.

0

방화벽 문제 일 수 있습니다. VMware를 사용하는 경우 바이러스 백신 방화벽도 해제되어 있는지 확인하고 방화벽 규칙을 확인하십시오.

또는 https://example.net을 사용해 보았지만 URL을 확인할 수는 있지만 'www.'를 보장합니다. - 그래서 https://www.example.net으로 전환하면 모든 것이 완벽하게 작동하는 것 같습니다. 적절한 요청이 전송되었습니다.

관련 문제