OSX 10.10 Yosemite에서 HTTPS URL에 대한 Curl POST의 SSLRead() 오류
문제:
OSX 10.10 Yosemite로 업그레이드한 후 HTTPS URL에 대한 CURL POST 요청이 다음 오류로 인해 실패합니다.
Error Number:56 Error String:SSLRead() return error -9806
원인:
이 오류는 PHP가 Yosemite에서 Apple의 Secure Transport를 사용하는 cURL 버전으로 컴파일되었으며 대상 URL은 SSLv3을 지원하지 않습니다.
해결책:
이 문제를 해결하려면 보안 전송 대신 OpenSSL을 사용하는 cURL 버전을 사용하는 PHP 버전입니다. 단계는 다음과 같습니다.
1. cURL 버전 확인:
php -i | grep "SSL Version"
출력이 "SecureTransport"인 경우 다음 단계로 진행합니다.
2. Homebrew 설치:
brew install homebrew/core/homebrew brew update
3. 필수 저장소를 탭하세요:
brew tap homebrew/dupes brew tap homebrew/versions brew tap homebrew/php
4. OpenSSL로 cURL 설치:
brew install --with-openssl curl
5. Homebrew cURL 및 OpenSSL을 사용하여 PHP를 설치합니다.
brew install --with-homebrew-curl --with-httpd24 php55
6. Apache 구성(사용하는 경우):
/etc/apache2/httpd.conf에 다음 줄을 추가합니다:
LoadModule php5_module /usr/local/opt/php55/libexec/apache2/libphp5.so
7. nginx용 PHP-FPM 시작(사용하는 경우):
mkdir -p ~/Library/LaunchAgents cp /usr/local/opt/php55/homebrew.mxcl.php55.plist ~/Library/LaunchAgents/ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php55.plist
8. PHP 확장 설치(선택 사항):
brew install php55-mcrypt
9. OpenSSL 확인:
php -i | grep "SSL Version"
출력에 "OpenSSL/1.0.2h"가 표시되어야 합니다.
이제 HTTPS URL에 대한 CURL POST 요청이 SSLRead() 오류 없이 성공해야 합니다. .
위 내용은 OSX 10.10 Yosemite의 Curl POST 요청에서 \'SSLRead() 반환 오류 -9806\'을 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!