Je viens de passer quelques heures sur Wamp 3.0.4 x64 (wampserver3.0.4_x64_apache2.4.18_mysql5.7.11_php5.6.19-7.0.4) afin de configurer OpenSSL. J'avais déjà fait ce test sur la version précédente (wampserver3_x86_apache2.4.17_mysql5.7.9_php5.6.15.exe) et c'était passé impeccable en quelques minutes.
J'en suis au stade ou cela fonctionne à priori bien (PHP 5.6.19 et 7.0.4). Wamp est en vert et les projets accessibles en http et https.
Le problème est que lorsque je lance Wamp ou que je change de version de PHP j'ai ces messages d'erreurs :
- Ordinal 4589 est introuvable : php\php5.6.19\libssh2.dll - Ordinal 313 est introuvable : php\php5.6.19\ext\php_openssl.dll
Extrait du apache_error.log en démarrant avec PHP 5.6.19
La grosse différence entre ma version WampServer et celle maintenue par Otomatic, est que j'utilise la variable d'environnement "PATH" pour accéder aux bibliothèques DLL.
C'est durant le basculement d'un php à l'autre que l'anomalie doit se produire. A vrai dire, je n'en sais rien.
- Ordinal 4589 est introuvable : php\php5.6.19\libssh2.dll
- Ordinal 313 est introuvable : php\php5.6.19\ext\php_openssl.dll
Ces messages, d'où vous les sortez ? Serait-ce du fichier "php_error.log" ?
@+
---------------------------------------------------------------------------------------------------------------------------------------------------------------- Mon site : [www.jcz.fr]
Entre Apache 2.4.17 PHP 5.6.15 oú ça fonctionnait bien et Apache 2.4.18 PHP 5.6.20 ou 7.0.4 oú il y a les erreurs, êtes vous certain d'avoir les mêmes paramètres et extensions php ainsi que les modules Apache.
c'est une installation propre. c'est erreur sont des message box windows (php-win.exe - Ordinal introuvable) : [hpics.li]
c'est erreurs se produisent au lancement de Wamp (premier démarrage) ou alors lors du changement de version de PHP (je n'ai pas tester le changement de apache ou de Mysql) et ce quelque soit la version de PHP initialisée.
Je suis certains d'avoir les mêmes paramètres et extensions dans la mesure ou c'était également une installation propre (machine virtuelle)
Etes-vous certains d'avoir ces deux DLL (php_openssl.dll & libssh2.dll) dans le répertoire "/wamp/bin/php/php5.6.19/ext" ?
@+
---------------------------------------------------------------------------------------------------------------------------------------------------------------- Mon site : [www.jcz.fr]
Un autre membre à exactement le même problème, à savoir : "Ordinal ??? est introuvable". Mais pas sur la même DLL.
Je pense qu'il y a un problème lors de la recopie des DLL du répertoire php vers apache. Il vaudra voir cela avec Otomatic qui fait le maintient de sa version WampServer.
@+
---------------------------------------------------------------------------------------------------------------------------------------------------------------- Mon site : [www.jcz.fr]
Y-a-t-il un lien symbolique entre le répertoire de Apache et ces DLL de php ?
@+
---------------------------------------------------------------------------------------------------------------------------------------------------------------- Mon site : [www.jcz.fr]
Dans C:\Wamp64\bin\apache\apache2.4.18\bin j'ai bien un lien symbolique vers libssh2.dll mais rien vers l'autre (ext\php_openssl.dll). Le lien pointe bien vers la version de PHP que j'utilise actuellement 7.0.4
Ce que je ne comprend pas c'est que les erreurs "parlent" toujours de la version 5.6.19 de PHP. Même quand je suis en version 7.0.4.
Je pense maintenant comprends votre problème, suite à votre dernière remarque. J'ai eu, il y a déjà fort longtemps, un problème similaire.
J'avais deux versions apache, qui au niveau de WampServer, tout me semblait correctement déclarées. Or quand j'étais sous apache 1, je ne sais pas pourquoi, il exécutait apache 2.
Après quelques recherches sur mon ordinateur, le problème venait du pare feu. Il y avait l'autorisation pour apache 2 mais pas pour apache 1.
A vérifier : --> panneau de configuration --> pare feu windows --> paramètres avancés --> règles de trafic entrant
Dans la liste des règles de trafic entrant, vous recherchez celles ayant un rapport avec Apache. Si vous utilisez deux versions différentes (2.4.18 & 2.4.17), vous devez avoir deux règles. Si ce n'est pas le cas, vous devez créer celle qui manque. Si c'est le cas, vérifiez que vous pointez sur le bon répertoire : --> F:\Wamp\bin\apache\apache2.4.18\bin\httpd.exe (chez moi).
@+
---------------------------------------------------------------------------------------------------------------------------------------------------------------- Mon site : [www.jcz.fr]
Merci de m'aider à résoudre ce problème. J'ai vérifier au niveau du pare-feu, j'ai même supprimé toutes les règles concernant Apache pour être sur mais le problème est toujours présent.
Pour information je n'ai qu'une version d'Apache mais plusieurs versions de PHP.
Désolé, mais je ne voie pas d'où peut provenir votre erreur. Comme je l'ai dit ci-dessus, je n'ai jamais rencontré ce genre d'anomalie.
Je pense même que cela n'a aucun rapport avec SSL.
J'ai aussi plusieurs versions PHP (deux, l'une en php 5.6 et l'autre en 5.5) dans un de mes environnements. Quand je bascule, je n'ai pas de perte de liens.
Peut-être que Otomatic à une idée sur votre problème, mais j'en doute.
@+
---------------------------------------------------------------------------------------------------------------------------------------------------------------- Mon site : [www.jcz.fr]
> Pour Otomatic, quels sont les vérifications à faire avant de penser à refaire une installation ? Pourquoi refaire une installation ? À mon humble avis, il s'agit d'un problème de paramétrage soit , pour PHP, de wamp\bin\php\php5.6.19\extras\ssl\openssl.cnf et/ou de wamp\bin\apache\apache2.4.18\conf\extra\httpd-ssl.conf
Ok merci, si quelqu'un peux comparer ou tester. (j'ai enlevé tous les commentaires)
Httpd-ssl.conf :
Listen 443 SSLCipherSuite HIGH:MEDIUM:!MD5:!RC4 SSLProxyCipherSuite HIGH:MEDIUM:!MD5:!RC4 SSLHonorCipherOrder on SSLProtocol all -SSLv3 SSLProxyProtocol all -SSLv3 SSLPassPhraseDialog builtin SSLSessionCache "shmcb:C:/Wamp64/bin/apache/apache2.4.18/conf/ssl/logs/ssl_scache(512000) SSLSessionCacheTimeout 300 <VirtualHost _default_:443> DocumentRoot "C:/Wamp64/www/" ServerName localhost:443 ServerAdmin admin@localhost ErrorLog "C:/Wamp64/bin/apache/apache2.4.18/conf/ssl/logs/ssl_error.log" TransferLog "C:/Wamp64/bin/apache/apache2.4.18/conf/ssl/logs/ssl_access.log" SSLEngine on SSLCertificateFile "C:/Wamp64/bin/apache/apache2.4.18/conf/ssl/localhost.crt" SSLCertificateKeyFile "C:/Wamp64/bin/apache/apache2.4.18/conf/ssl/localhost.key" <FilesMatch "\.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> <Directory "C:/Wamp64/www/"> SSLOptions +StdEnvVars Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> BrowserMatch "MSIE [2-5]" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 CustomLog "C:/Wamp64/bin/apache/apache2.4.18/conf/ssl/logs/ssl_request.log" \ "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" </VirtualHost>
Openssl.cnf :
HOME = . RANDFILE = $ENV::HOME/.rnd oid_section = new_oids [ new_oids ] tsa_policy1 = 1.2.3.4.1 tsa_policy2 = 1.2.3.4.5.6 tsa_policy3 = 1.2.3.4.5.7 [ ca ] default_ca = CA_default # The default ca section [ CA_default ] dir = ./demoCA # Where everything is kept certs = $dir/certs # Where the issued certs are kept crl_dir = $dir/crl # Where the issued crl are kept database = $dir/index.txt # database index file. new_certs_dir = $dir/newcerts # default place for new certs. certificate = $dir/cacert.pem # The CA certificate serial = $dir/serial # The current serial number crlnumber = $dir/crlnumber # the current crl number crl = $dir/crl.pem # The current CRL private_key = $dir/private/cakey.pem# The private key RANDFILE = $dir/private/.rand # private random number file x509_extensions = usr_cert # The extentions to add to the cert name_opt = ca_default # Subject Name options cert_opt = ca_default # Certificate field options default_days = 365 # how long to certify for default_crl_days= 30 # how long before next CRL default_md = default # use public key default MD preserve = no # keep passed DN ordering policy = policy_match [ policy_match ] countryName = match stateOrProvinceName = match organizationName = match organizationalUnitName = optional commonName = supplied emailAddress = optional [ policy_anything ] countryName = optional stateOrProvinceName = optional localityName = optional organizationName = optional organizationalUnitName = optional commonName = supplied emailAddress = optional [ req ] default_bits = 1024 default_keyfile = privkey.pem distinguished_name = req_distinguished_name attributes = req_attributes x509_extensions = v3_ca # The extentions to add to the self signed cert string_mask = utf8only [ req_distinguished_name ] countryName = Country Name (2 letter code) countryName_default = AU countryName_min = 2 countryName_max = 2 stateOrProvinceName = State or Province Name (full name) stateOrProvinceName_default = Some-State localityName = Locality Name (eg, city) 0.organizationName = Organization Name (eg, company) 0.organizationName_default = Internet Widgits Pty Ltd organizationalUnitName = Organizational Unit Name (eg, section) commonName = Common Name (e.g. server FQDN or YOUR name) commonName_max = 64 emailAddress = Email Address emailAddress_max = 64 [ req_attributes ] challengePassword = A challenge password challengePassword_min = 4 challengePassword_max = 20 unstructuredName = An optional company name [ usr_cert ] basicConstraints=CA:FALSE nsComment = "OpenSSL Generated Certificate" subjectKeyIdentifier=hash authorityKeyIdentifier=keyid,issuer [ v3_req ] basicConstraints = CA:FALSE keyUsage = nonRepudiation, digitalSignature, keyEncipherment [ v3_ca ] subjectKeyIdentifier=hash authorityKeyIdentifier=keyid:always,issuer basicConstraints = CA:true [ crl_ext ] authorityKeyIdentifier=keyid:always [ proxy_cert_ext ] basicConstraints=CA:FALSE nsComment = "OpenSSL Generated Certificate" subjectKeyIdentifier=hash authorityKeyIdentifier=keyid,issuer proxyCertInfo=critical,language:id-ppl-anyLanguage,pathlen:3,policy:foo [ tsa ] default_tsa = tsa_config1 # the default TSA section [ tsa_config1 ] dir = ./demoCA # TSA root directory serial = $dir/tsaserial # The current serial number (mandatory) crypto_device = builtin # OpenSSL engine to use for signing signer_cert = $dir/tsacert.pem # The TSA signing certificate certs = $dir/cacert.pem # Certificate chain to include in reply signer_key = $dir/private/tsakey.pem # The TSA private key (optional) default_policy = tsa_policy1 # Policy if request did not specify it other_policies = tsa_policy2, tsa_policy3 # acceptable policies (optional) digests = md5, sha1 # Acceptable message digests (mandatory) accuracy = secs:1, millisecs:500, microsecs:100 # (optional) clock_precision_digits = 0 # number of digits after dot. (optional) ordering = yes # Is ordering defined for timestamps? tsa_name = yes # Must the TSA name be included in the reply? ess_cert_id_chain = no # Must the ESS cert id chain be included?
Avez-vous lu ma page web consacré aux certificats SSL ?
Pour le fonctionnement d'apache, le fichier "open.cnf" ne sert à rien.
Par contre, pour le fichier Httpd-ssl.conf, il me semble qu'il vous manque quelques déclaratives !
Je peux vous communiquer l'exemple de mon fichier httpd.conf (oui, j'ai tout mis dedans). Faites la demande en m'envoyant un courriel à l'adresse "artemus @ jcz.fr" sans les blancs bien sûr.
@+
---------------------------------------------------------------------------------------------------------------------------------------------------------------- Mon site : [www.jcz.fr]
Aujourd'hui j'ai essayé la fonction "Vérifier compilateur VC, compatibilité et fichiers ini" et j'ai deux erreurs (peux être liées à mon problème de base) ?
Warning: PHP Startup: Unable to load dynamic library 'C:/Wamp64/bin/php/php5.6.1 9/ext/php_curl.dll' - Le systÞme dÆexploitation ne peut pas exÚcuter %1. in Unknown on line 0
Warning: PHP Startup: Unable to load dynamic library 'C:/Wamp64/bin/php/php5.6.1 9/ext/php_openssl.dll' - Le systÞme dÆexploitation ne peut pas exÚcuter %1. in Unknown on line 0 It may take a while ...........
Compiler Visual C++ versions used:
PHP 5.6.19 Compiler => MSVC11 (Visual C++ 2012) Architecture => x64 is compatible with Apache 2.4.18
PHP 7.0.4 Compiler => MSVC14 (Visual C++ 2015) Architecture => x64 is compatible with Apache 2.4.18
PHP 7.0.5 Compiler => MSVC14 (Visual C++ 2015) Architecture => x64 is compatible with Apache 2.4.18
MySQL Ver 5.7.11 for Win64 on x86_64 (MySQL Community Server (GPL))
Apache 2.4.18 Apache Lounge VC14 Server built: Dec 9 2015 11:13:29 Architecture: 64-bit
--- Do you want to copy the results into Clipboard? --- Type 'y' to confirm - Press ENTER to continue...