Ich wollte heute die OpenSSL Extension für PHP nutzen, sie funktioniert auf meinem lokalen System leider nicht. An meinem Code liegt es nicht, ich habe schon auf einem HostEurope Webpack gegengetestet, dort funktioniert es einwandfrei.
Mit XAMPP krieg ich folgende Fehlermeldung:
- Code: Select all
error:02001002:system library:fopen:No such file or directory
error:2006D080:BIO routines:BIO_new_file:no such file
error:02001002:system library:fopen:No such file or directory
error:2006D080:BIO routines:BIO_new_file:no such file
Ach ja, meine Funktion sieht so aus:
- Code: Select all
function loadKeys ($filename, $passphrase=FALSE)
{
if (!is_file($filename)) die("[CertificateManager::loadKeys]: could not open file '$filename'");
$this->key_public = openssl_pkey_get_public ("file://$filename");
while (($e = openssl_error_string()) !== false)
{
$errors .= $e."<br>";
}
if ($errors) die ("[CertificateManager::loadKeys]: loading public failed:<br>$errors");
$params = array ("file://$filename", $passphrase);
$this->key_private = openssl_pkey_get_private($params);
while (($e = openssl_error_string()) !== false)
{
$errors .= $e."<br>";
}
if ($errors) die ("[CertificateManager::loadKeys]: loading private failed:<br>$errors");
}
Ich habe XAMPP Lite version 1.5.3a installiert, es ist ein Windows XP SP 2 Rechner, XAMPP liegt auf Y:\xampp.
Die verbreiteten und googlebaren Lösungsvorschläge hab ich schon alle durchgezogen - die DLLs libeay32.dll und ssleay32.dll liegen in WINDOWS\SYSTEM32, die Umgebungsvariable OPENSSL_CONF ist auf "Y:\xampp\php\extras\openssl\openssl.cnf" gesetzt, die openssl.cnf lag auch schon mal in c:\usr\local\ssl - alles ohne Erfolg, die Fehlermeldung bleibt.
Bitte helft mir, sonst muss ich heulen. Oder so.
Vielen Dank und Gruß,
Sam