Na het installeren van PHP 7.1 via Brew kreeg ik via de WordPress HTTP API soms de volgende foutmelding te zien:
cURL error 56: SSLRead() return error -9806
Ik was deze fout wel vaker tegen gekomen, maar het is altijd weer even zoeken naar de oplossing. Het belangrijkste is dat er gewerkt wordt Homebrew curl
en openssl
:
brew uninstall git brew uninstall curl brew install openssl brew install libressl brew install curl --with-openssl brew install php71 --with-homebrew-curl --with-homebrew-libressl --build-from-source brew install php71-xdebug brew install php71-mcrypt
Verder zijn ook de volgende Homebrew packages handig om te installeren:
brew install svn brew install git --with-brewed-curl --with-brewed-openssl --with-brewed-svn --without-completions brew install git-ftp brew install git-flow brew install composer brew install php-code-sniffer brew install phpmd brew install phpunit brew install phpmyadmin
Update 29 augustus 2017
Bovenstaande commando’s lijken het probleem niet altijd op te lossen. Eventueel kan onderstaande dan geprobeerd worden:
brew reinstall curl --with-openssl
De Homebrew curl
formule is ‘keg-only’, maar om er zeker van te zijn dat Homebrew curl
formule gebruikt wordt linken we deze wel:
brew link curl --force
Ook zorgen we er voor dat de Homebrew curl
formule gebruikt wordt in de shell:
echo 'export PATH="/usr/local/opt/curl/bin:$PATH"' >> ~/.zshrc
Als het goed is geeft het volgende commando nu het volgende resultaat:
curl --version
curl 7.55.1 (x86_64-apple-darwin16.7.0) libcurl/7.55.1 OpenSSL/1.0.2l zlib/1.2.8 libssh2/1.8.0 Release-Date: 2017-08-14 Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp Features: AsynchDNS IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP UnixSockets HTTPS-proxy
Met name de OpenSSL/1.0.2l
is hierbij belangrijk. Daarna gaan we PHP 7.1 opnieuw installeren met Homebrew curl
:
brew reinstall php71 --with-homebrew-curl
Als het goed is geeft het volgende commando nu het volgende resultaat:
php -i | grep "SSL Version"
SSL Version => OpenSSL/1.0.2l
2 reacties op “Homebrew, PHP 7.1 en cURL error 56: SSLRead() return error -9806”
Hi Remco,
Ook ik probeer PHP met CURL en OpenSSL werkend te krijgen, echter heeft Homebrew zijn packages geupdate/gemigreerd en is homebrew/php deprecated, alles zit nu in homebrew/core.
Echter sinds die verandering zijn parameters zoals; –with-curl –with-homebrew-curl etc. niet meer ondersteund. Ik krijg dan PHP ook niet werkend met de nieuwste versie van Curl en Openssl.
Enig idee wat we hier aan kunnen doen?
Ik heb momenteel geen problemen met PHP en cURL en OpenSSL en zag je dat inmiddels antwoord hebt gekregen via GitHub issue: https://github.com/Homebrew/homebrew-core/issues/27938.