programing

PHP: 기본 cURL 시간 초과 값

codeshow 2023. 8. 5. 11:05
반응형

PHP: 기본 cURL 시간 초과 값

기본 PHP cURL 시간 초과 값은 얼마입니까?코딩에서 값을 얻을 수 있습니까?

시간 초과 설정에 따라 다릅니다.

cURL은 연결 시간 초과 설정과 관련된 다양한 옵션을 제공합니다.이러한 옵션 중 일부는 제한이 설정되어 있는 반면 다른 옵션은 전송에 무기한 시간이 소요될 수 있습니다.어떤 값에 기본 설정이 있고 어떤 값에 기본 설정이 없는지 이해하려면 libcurl의curl_easy_setopt()기능: http://curl.haxx.se/libcurl/c/curl_easy_setopt.html

libcurl에는 다음과 같은 연결 시간 초과 관련 설정이 나열됩니다.

  • CULOPT_FTP_RESPON_TIMEOUT: 기본값 없음(무기한)
  • CURLOPT_TIMEOUT: 기본값 없음(무기한)
  • CULOPT_TIMEOUT_MS: 기본값 없음(무기한)
  • CURLOPT_CONNECTTIMEOUT: 기본값은 300초입니다.
  • CURLOPT_CONNECTTIMEOUT_MS: 기본값 없음
  • CURLOPT_ACCEPTIMEOUT_MS: 기본값은 60000ms입니다.

PHP 소스 코드는 위의 기본 설정인 https://github.com/php/php-src/blob/master/ext/curl/interface.c 을 재정의하지 않습니다.PHP 바인딩이 재정의하는 유일한 관련 매개 변수는 다음과 같습니다.CURLOPT_DNS_CACHE_TIMEOUT기본값을 60초에서 120초로 변경: https://github.com/php/php-src/blob/a0e3ca1c986681d0136ce4550359ecee2826a80c/ext/curl/interface.c#L1926

다른 답변 중 하나는 PHP가 설정할 것이라고 명시했습니다.CURLOPT_TIMEOUT에 지정된 값까지default_socket_timeoutini 설정나는 이 주장을 뒷받침할 PHP 소스 코드에서 아무것도 찾을 수 없었고, 매우 큰 파일을 다운로드하여 cURL 타임아웃을 트리거할 수 없었습니다.default_socket_timeout1초의 설정

기본값은 다음과 같습니다.

  • CULOPT_FTP_RESPON_TIMEOUT: 무기한
  • CULOPT_TIMEOUT: 무기한
  • CULOPT_TIMEOUT_MS: 무기한
  • CURLOPT_CONNECTTIMEOUT: 300초
  • CULOPT_CONNECTTIMEOUT_MS: 무기한
  • CURLOPT_ACCEPTTIMEOUT_MS: 60초

이전 답변(참고용):

내가 알기로는 CURL은 다음과 같이 재정의되지 않는 한 default_socket_timeout을 따릅니다.CURLOPT_TIMEOUT/CURLOPT_CONNECTTIMEOUT.

$socket_timeout = ini_get('default_socket_timeout'); // timeout in seconds

libcurl에 없습니다.http://curl.haxx.se/mail/lib-2003-05/0097.html

언급URL : https://stackoverflow.com/questions/10308915/php-default-curl-timeout-value

반응형