Instalarea

To use PHP's OpenSSL support you must also compile PHP --with-openssl[=DIR] .

The OpenSSL library also has additional requirements for normal operation at run-time. Most notably, OpenSSL requires access to a random or pseudo-random number generator; on most Unix and Unix-like platforms (including Linux), this means that it must have access to a /dev/urandom or /dev/random device.

As of PHP 5.6.3, the configure option --with-system-ciphers is available which causes PHP to use the system cipher list instead of a hard-coded default.

Notă: Note to Win32 Users

Pentru ca această extensie să funcționeze, anumite fișiere DLL trebuie să fie accesibile în calea de sistem a Windows din variabila PATH. Pentru informații despre cum poate fi realizat acest lucru, accesați FAQ întitulat " Cum să adaug directorul meu PHP la variabila PATH din Windows" pentru informații despre cum să realizați aceasta. Cu toate că copierea fișierelor DLL din directorul PHP în directorul de sistem al Windows de asemenea funcționează (deoarece directorul de sistem este în mod implicit inclus în variabila PATH), acest lucru nu este recomandabil. Această extensie necesită ca următoarele fișiere să existe în calea PATH : libeay32.dll, or, as of OpenSSL 1.1, libcrypto-*.dll

Additionally, if you are planning to use the key generation and certificate signing functions, you will need to install a valid openssl.cnf file on your system. We include a sample configuration file in our win32 binary distributions, in the extras/openssl directory.

PHP will search for the openssl.cnf using the following logic:

  • the OPENSSL_CONF environmental variable, if set, will be used as the path (including filename) of the configuration file.
  • the SSLEAY_CONF environmental variable, if set, will be used as the path (including filename) of the configuration file.
  • The file openssl.cnf will be assumed to be found in the default certificate area, as configured at the time that the openssl DLL was compiled. This is usually means that the default filename is c:\usr\local\ssl\openssl.cnf.

In your installation, you need to decide whether to install the configuration file at c:\usr\local\ssl\openssl.cnf or whether to install it someplace else and use environmental variables (possibly on a per-virtual-host basis) to locate the configuration file. Note that it is possible to override the default path from the script using the configargs of the functions that require a configuration file.