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
Bronnen