Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Betulkan \'SSLRead() return error -9806\' dalam Curl POST Requests pada OSX 10.10 Yosemite?

Bagaimana untuk Betulkan \'SSLRead() return error -9806\' dalam Curl POST Requests pada OSX 10.10 Yosemite?

Patricia Arquette
Lepaskan: 2024-11-02 00:46:30
asal
812 orang telah melayarinya

How to Fix

SLRRead() Ralat dalam Curl POST ke URL HTTPS pada OSX 10.10 Yosemite

Isu:

Selepas menaik taraf kepada OSX 10.10 Yosemite, permintaan CURL POST ke URL HTTPS gagal dengan ralat:

Error Number:56
Error String:SSLRead() return error -9806
Salin selepas log masuk

Punca:

Ralat ini berlaku apabila PHP disusun dengan versi cURL yang menggunakan Pengangkutan Selamat Apple di bawah Yosemite dan URL sasaran tidak menyokong SSLv3.

Penyelesaian:

Untuk menyelesaikan isu ini, pasangkan versi PHP yang menggunakan versi cURL yang menggunakan OpenSSL dan bukannya Pengangkutan Selamat. Berikut adalah langkah-langkahnya:

1. Semak Versi cURL:

php -i | grep "SSL Version"
Salin selepas log masuk
Salin selepas log masuk

Jika output ialah "SecureTransport," teruskan ke langkah seterusnya.

2. Pasang Homebrew:

brew install homebrew/core/homebrew
brew update
Salin selepas log masuk

3. Ketik Repositori Diperlukan:

brew tap homebrew/dupes
brew tap homebrew/versions
brew tap homebrew/php
Salin selepas log masuk

4. Pasang cURL dengan OpenSSL:

brew install --with-openssl curl
Salin selepas log masuk

5. Pasang PHP dengan Homebrew cURL dan OpenSSL:

brew install --with-homebrew-curl --with-httpd24 php55
Salin selepas log masuk

6. Konfigurasi Apache (jika menggunakan):

Tambah baris berikut pada /etc/apache2/httpd.conf:

LoadModule php5_module    /usr/local/opt/php55/libexec/apache2/libphp5.so
Salin selepas log masuk

7. Mulakan PHP-FPM untuk nginx (jika menggunakan):

mkdir -p ~/Library/LaunchAgents
cp /usr/local/opt/php55/homebrew.mxcl.php55.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php55.plist
Salin selepas log masuk

8. Pasang Sambungan PHP (pilihan):

brew install php55-mcrypt
Salin selepas log masuk

9. Sahkan OpenSSL:

php -i | grep "SSL Version"
Salin selepas log masuk
Salin selepas log masuk

Output seharusnya menunjukkan "OpenSSL/1.0.2j."

Kini, permintaan CURL POST anda ke URL HTTPS sepatutnya berjaya tanpa ralat SSLRead() .

Atas ialah kandungan terperinci Bagaimana untuk Betulkan \'SSLRead() return error -9806\' dalam Curl POST Requests pada OSX 10.10 Yosemite?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan