PHP Curl은 SSL에 액세스할 때 연결 속도를 저하시킬 수 있습니다. 수정하는 방법?

PHP Curl은 SSL에 액세스할 때 연결 속도를 저하시킬 수 있습니다. 수정하는 방법?

새 서버로 마이그레이션한 후 스크립트 속도가 급격히 떨어졌습니다.

일부 문제 해결에서는 서버가 SSL 인증서를 로드하려고 시도하면서 Curl 연결 중에 속도가 느려지는 것으로 나타났습니다. 어떤 타사 사이트나 API에 액세스하더라도 결과는 동일합니다.

이는 Amazon EC2 Linux 인스턴스에 있습니다. 인증서는 서버와 함께 제공됩니다. 이 동일한 스크립트는 다른 서버에서 잘 실행됩니다(더 이상 활성화되지 않음).

그러나 이제 자세한 출력에 표시되기 전에 2~100초 동안 일시 중지됩니다.

 CAfile: /etc/pki/tls/certs/ca-bundle.crt
 CApath: none
 ALPN/NPN, server did not agree to a protocol

컬 요청이 많아질수록 속도는 점차 느려집니다.

그런 다음 cur_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE)를 추가했는데 문제가 사라졌습니다! 속도가 정상으로 돌아옵니다.

따라서 SSL 인증서를 읽는 방식으로 인해 프로토콜 협상을 시도하는 동안 속도가 느려지는 것 같습니다.

이 문제의 원인은 무엇입니까?

감사해요

답변1

너무 늦었을 수도 있지만 최근에도 같은 문제가 발생했습니다. 내 PHP 스크립트가 centos7에서 실행 중입니다.

추적을 보고 Google을 계속 검색한 후 이 동작을 일으키는 문제를 발견했습니다.

https://bugzilla.redhat.com/show_bug.cgi?id=1659108

해결책:

업데이트했습니다양성자 교환막컬링에 도움이 되는 패키지(1.0.3-5.el7 -> 1.0.3-7.el7)입니다.

패키지를 업데이트할 수 없고 SSL 인증서 확인을 비활성화하고 싶지 않은 경우 다음을 사용할 수 있습니다.파일에서 콘텐츠 가져오기libcurl 대신.

관련 정보