Pour utiliser le support OpenSSL de PHP, vous devez aussi compiler PHP avec l'option de configuration --with-openssl[=DIR] .
La bibliothèque OpenSSL possède aussi des dépendances à l'exécution. Par exemple, OpenSSL a besoin d'accéder à un générateur de nombres pseudo-aléatoires; sur la plupart des plateformes Unix (incluant donc Linux), elle doit avoir accès au périphérique /dev/urandom ou /dev/random.
Note: Note aux utilisateurs Win32
Afin de faire fonctionner cette extension, quelques bibliothèques DLL doivent être disponibles via le PATH du système Windows. Lisez la FAQ intitulée "Comment ajouter mon dossier PHP à mon PATH WIndows" pour plus d'informations. Le fait de copier les bibliothèques DLL depuis le dossier PHP dans le dossier système Windows fonctionne également (car le dossier système est par défaut dans le PATH système), mais cette méthode n'est pas recommandée. Cette extension nécessite que les fichiers suivants se trouvent dans le PATH : libeay32.dll
De plus, si vous avez prévu d'utiliser les fonctions relatives à la génération de clés et aux certificats, vous devez installer un fichier openssl.cnf valide sur votre système. Depuis PHP 4.3.0, nous incluons un fichier de configuration de base dans les distributions de PHP pour win32. PHP 4.3.x et 4.4.x ont ce fichier dans le dossier openssl. PHP 5.x et 6.x ont ce fichier dans le dossier extras/openssl. Si vous utilisez PHP 4.2.x ou bien si le fichier n'est pas présent, vous pouvez l'obtenir sur la page des binaires OpenSSL ou en téléchargeant une version récente de PHP. Attention : Windows Explorer cache par défaut les fichiers dont l'extension est .cnf et indique que le type de fichier est SpeedDial.
PHP va rechercher le fichier openssl.cnf suivant la tactique suivante :
Dans votre installation, vous devrez décider si vous allez installer le fichier dans c:\usr\local\ssl\openssl.cnf ou si vous allez le faire ailleurs et configurer une variable d'environnement (possiblement par site virtuel). Notez qu'il est possible de remplacer le chemin par défaut en utilisant le paramètre
- La variable d'environnement OPENSSL_CONF, si elle est définie, sera utilisée comme chemin (comprenant le fichier) vers le fichier de configuration.
- La variable d'environnement SSLEAY_CONF, si elle est définie, sera utilisée comme chemin (comprenant le fichier) vers le fichier de configuration.
- Le fichier openssl.cnf sera supposé se trouver dans le dossier des certificats, tel que configuré lors de la compilation de la bibliothèque openssl. Cela signifie généralement c:\usr\local\ssl\openssl.cnf.
configargs
des fonctions qui requièrent un fichier de configuration.