Что мне нужно сделать, чтобы расширение OpenSSL работало на моем xampp (Windows)?:(

Я уже все перепробовал.... но не работает! Я поместил libeay32.dll и ssleay32.dll в папку Windows System32 и включил расширение php_openssl.dll в php.ini. Но при выполнении следующего кода возникают некоторые ошибки. Моя версия openSSL 1.0.0. Кто-нибудь может мне помочь?

Код:

$configargs = array(
    'config' => 'openssl.cnf',
    'digest_alg' => 'md5',
    'x509_extensions' => 'v3_ca',
    'req_extensions'   => 'v3_req',
    'private_key_bits' => 666,
    'private_key_type' => OPENSSL_KEYTYPE_RSA,
    'encrypt_key' => false,
    );

$dn = array(
    "countryName" => "DE",
    "stateOrProvinceName" => "wubbla wubbla",
    "localityName" => "wubbla",
    "organizationName" => "Internet Widgits Pty Ltd",
    "organizationalUnitName" => "Organizational Unit Name",
    "commonName" => "example.com",
    "emailAddress" => "Email Address"
);

$csr = openssl_csr_new($dn, $privkey, $configargs);

// Show any errors that occurred here
while (($e = openssl_error_string()) !== false) {
    echo $e . "\n";
   }

Ошибки:

error:02001003:system library:fopen:No such process
error:2006D080:BIO routines:BIO_new_file:no such file
error:0E064002:configuration file routines:CONF_load:system lib
error:02001002:system library:fopen:No such file or directory
error:2006D080:BIO routines:BIO_new_file:no such file
error:0E064002:configuration file routines:CONF_load:system lib 

1 ответ

Решение

Ну, согласно сообщению об ошибке, он не может fopen() файл конфигурации, который вы настроили как:

'config' => 'openssl.cnf',

Это существует? Попробуйте использовать абсолютный путь или относительно CWD.

Другие вопросы по тегам