ホームページ  >  記事  >  バックエンド開発  >  OSX 10.10 Yosemite での Curl POST リクエストの「SSLRead() return error -9806」を修正する方法

OSX 10.10 Yosemite での Curl POST リクエストの「SSLRead() return error -9806」を修正する方法

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-02 00:46:30669ブラウズ

How to Fix

OSX 10.10 Yosemite の HTTPS URL への Curl POST での SSLRead() エラー

問題:

OSX 10.10 Yosemite にアップグレードした後、HTTPS URL への CURL POST リクエストが次のエラーで失敗します:

Error Number:56
Error String:SSLRead() return error -9806

原因:

このエラーは、PHP がYosemite で Apple の Secure Transport を使用する cURL のバージョンでコンパイルされており、ターゲット URL は SSLv3 をサポートしていません。

解決策:

この問題を解決するには、 Secure Transport の代わりに OpenSSL を使用する cURL のバージョンを使用する PHP のバージョン。手順は次のとおりです。

1. cURL バージョンを確認します:

php -i | grep "SSL Version"

出力が「SecureTransport」の場合は、次の手順に進みます。

2. Homebrew をインストールします:

brew install homebrew/core/homebrew
brew update

3. [必要なリポジトリ] をタップします:

brew tap homebrew/dupes
brew tap homebrew/versions
brew tap homebrew/php

4. OpenSSL を使用して cURL をインストールします:

brew install --with-openssl curl

5. Homebrew cURL と OpenSSL を使用して PHP をインストールします:

brew install --with-homebrew-curl --with-httpd24 php55

6. Apache を構成します (使用している場合):

次の行を /etc/apache2/httpd.conf に追加します:

LoadModule php5_module    /usr/local/opt/php55/libexec/apache2/libphp5.so

7. nginx 用の PHP-FPM を開始します (使用している場合):

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

8. PHP 拡張機能をインストールします (オプション):

brew install php55-mcrypt

9. OpenSSL を確認します:

php -i | grep "SSL Version"

出力には「OpenSSL/1.0.2h」と表示されるはずです。

これで、HTTPS URL への CURL POST リクエストは SSLRead() エラーなしで成功するはずです。 .

以上がOSX 10.10 Yosemite での Curl POST リクエストの「SSLRead() return error -9806」を修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。