2017-01-12 71 views
2

我最近在Mac上將PHP版本從El Capitan的默認值升級到了7.1。由於這樣做,當我試圖向本地託管的Web服務發出請求時,我收到以下錯誤: cURL error 35: SSL: CA certificate set, but certificate verification is disabled。該服務向網頁發出curl請求,在網頁中服務解釋並生成一些數據。我如何在OSX 10.11.6上使用OpenSSL代替SecureTransport和Apache PHP

我認爲我已經跟蹤了錯誤,因爲PHP使用的SSL版本是SecureTransport。當我向Ubuntu機器上託管的相同服務發出相同請求時,沒有任何問題。本機使用的SSL版本是OpenSSL/1.0.2g

我已經嘗試使用osx 10.10 Curl POST to HTTPS url gives SSLRead() errorhttps://www.farces.com/wikis/naked-server/php/php-7-openssl/嘗試讓我的本地版本的PHP使用OpenSSL,但都沒有完全成功。當我在終端上運行php -i | grep "SSL Version"時,我得到SSL Version => OpenSSL/1.0.2j,但看着<?php phpinfo(); ?>,我仍然得到SSL Version SecureTransport

沒有在我的機器上拋出無意義的命令,是否有一個簡單的原因,我可以讓Apache版本的PHP也使用OpenSSL而不是SecureTransport?

回答

0

我在macOS上使用普通捲曲並獲得相同的錯誤。 curl -l https://www.ferrari.com。 解決方案是使用home brew安裝curl openSSL。

brew install curl --with-openssl 

然後你需要使用這個版本的curl並自己構建php。

試試這個:

brew uninstall php56 && brew install php56 --with-homebrew-curl 
相關問題