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
739 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!

sumber:php.cn
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