1

これはbugs.php.netで報告されています。libeay32.dll と ssleay32.dllxampp/apache/bin同じファイルに置き換えると動作しますがxampp/php/SSL を使用できません

SSL を使用する必要があります。これを解決できた人はいますか?


暗号化、復号化などのために、XAMPP (1.8.1) 上のPHP (5.4.7) でOpenSSLライブラリを使用しています。ローカルホストでも SSL を使用しています。

openssl_pkey_new()メソッドを使用して秘密鍵と公開鍵のペアを作成し、証明書も生成できます。

しかし、ルート証明書にアクセスしようとすると (上記の関数を使用して作成)、Web ページがクラッシュします。

$root_private_key = openssl_get_privatekey(file_get_contents($path), $pass);
echo "KEY: " . $root_private_key; // KEY: Resource id #11
openssl_private_encrypt($plaintext, $encrypted_data, $root_private_key);

phpseclib ライブラリを使用してみましたが、それも同じことを行います。

私も設定しようとしましたini_set('max_execution_time', 0);


PHP ログを確認したところ、空であり、Apache ログで次のことがわかりました。

[mpm_winnt:notice] [pid 3312:tid 484] AH00428: Parent: child process exited with status 3221225477 -- Restarting.
[ssl:warn] [pid 3312:tid 484] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
[mpm_winnt:notice] [pid 3312:tid 484] AH00455: Apache/2.4.3 (Win32) OpenSSL/1.0.1c PHP/5.4.7 configured -- resuming normal operations
[mpm_winnt:notice] [pid 3312:tid 484] AH00456: Server built: Aug 18 2012 12:41:37
[core:notice] [pid 3312:tid 484] AH00094: Command line: 'apache\\bin\\httpd.exe -d C:/xampp/apache'
[mpm_winnt:notice] [pid 3312:tid 484] AH00418: Parent: Created child process 1520
AH00548: NameVirtualHost has no effect and will be removed in the next release C:/xampp/apache/conf/extra/httpd-vhosts.conf:19
[ssl:warn] [pid 1520:tid 496] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
[mpm_winnt:notice] [pid 1520:tid 496] AH00354: Child: Starting 150 worker threads.

私は以下を試しましたが、どれも役に立ちません:

PHP openssl_public_encryptによりページタイムアウト/接続がリセットされますか?

php/タイムアウト/サーバーへの接続がリセットされましたか?

openssl 関数を使用すると Apache サーバー (xampp) がクラッシュする

PHP が予期せずエラーなしで終了する

ヘルプ/提案をいただければ幸いです。

4

3 に答える 3

0

phpseclib は、利用可能な場合、RSA 秘密鍵の生成に OpenSSL を使用します。この動作を無効にするには、Crypt/RSA.php をインクルードした後にこれを実行します。

define('CRYPT_RSA_MODE', CRYPT_RSA_MODE_INTERNAL);

ところで、生成しようとしているキーの大きさはどれくらいですか?

于 2013-05-19T16:21:28.580 に答える