PHP のソケット トランスポート "ssl" のトラブルシューティング: 「接続できません」エラー
PHP の " ssl" トランスポートを使用すると、「ソケット トランスポート 'ssl' が見つかりません - PHP を設定したときに有効にするのを忘れましたか?」というエラーが発生する場合があります。この問題は、Windows システム上の IIS6 のコンテキストでよく発生します。
一般的な原因と解決策:
ステップ 1: PHP 拡張機能を確認する
- 先頭のセミコロン (;) を削除して、php.ini ファイル内で php_openssl.dll 拡張子と php_sockets.dll 拡張子が有効になっていることを確認します。
- PHP が php.ini をロードしていることを確認します。 file.
ステップ 2: DLL ファイルを見つける
- php_openssl.dll および php_sockets.dll ファイルが正しいディレクトリにあることを確認します (通常は
ステップ 3: OpenSSL DLL をコピーします
- ssleay32.dll と libeay32.dll を PHP フォルダーにコピーします。 Windows フォルダー、および Windows/system32 フォルダー。
ステップ 4: Windows パス変数を設定する
- Windows パス変数に次の場所が含まれていることを確認します。 PHP 実行可能ファイル。
ステップ 5: ファイルのアクセス許可を確認する
- 必要なファイルに適切なアクセス許可があることを確認します。
ステップ 6: IIS を再起動します
追加のトラブルシューティング手順:
- 問題を特定するには、別の Web サーバー (Apache など) を使用します。
- IIS の Web サイトで SSL が有効になっていることを確認します。
- PHP エラーを確認します。詳細な情報については、ログを参照してください。
- トラブルシューティングの詳細については、PHP ドキュメントと OpenSSL FAQ を参照してください。
特定のケース: Windows 7、PHP 5.4.0、XAMPP 1.8.1
この特定のシナリオでは、次の手順で問題が解決されました。
- XAMPP PHP フォルダー内の php.ini-production の名前を php.ini に変更します。
- php.ini を編集し、extension_dir=ext 行のコメントを解除します。
- extension=php_openssl.dll 行のコメントも解除します。
以上が「PHP でソケット トランスポート 'ssl' が見つかりません」エラーを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。