J'ai installé un nouveau serveur IIS 10 sur une nouvelle machine Windows 10 avec PHP 5.6.31VC11 x64 Non Thread Safe (ne peut pas utiliser PHP7 pour le moment). PHP fonctionne maintenant bien et phpinfo()
affiche tout correctement.Le pilote SqlSrv ne se charge pas avec IIS 10 et PHP 5.6
Je viens d'installer le pilote SQL PHP mais il n'est pas en cours de chargement. Il n'est pas apparaître dans phpinfo()
et lorsque je tente de l'utiliser dans le code j'obtiens l'erreur PHP suivante:
PHP Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in test.php:3
Stack trace:
#0 test.php(3): PDO->__construct('sqlsrv:server=...', '', '')
Pour installer le pilote SQL PHP, je l'ai fait ce qui suit:
- téléchargé et installé le Microsoft ODBC Driver 11 for SQL Server (x64)
- téléchargé et installé le Microsoft Driver for PHP for SQL Server (SQLSRV32.EXE)
- les extensions de Activé gestionnaire PHP (
php_sqlsrv_56_nts.dll
etphp_sqlsrv_56_nts.dll
) - REStarted le serveur IIS
[PHP_XDEBUG-2.5.5-5.6-VC11-NTS-X86_64]
extension=php_xdebug-2.5.5-5.6-vc11-nts-x86_64.dll
[PHP_PDO_ODBC]
extension=php_pdo_odbc.dll
[PHP_PDO_SQLSRV_56_NTS]
extension=php_sqlsrv_56_nts.dll
[PHP_SQLSRV_56_NTS]
extension=php_sqlsrv_56_nts.dll
Tout semble correct pour moi et je l'ai déjà fait avec succès sur d'autres machines avant. J'ai l'impression qu'il me manque quelque chose de simple.
Quelques autres notes:
- L'erreur PHP journal est vide.
- J'ai essayé de charger tous les autres fichiers dll que j'ai téléchargés (tels que ceux destinés à 5.5, 5.4 etc) mais cela ne change rien.
Il convient de noter que j'ai installé Xdebug très bien et il est montrant en phpinfo()
.
Les pilotes SQL Server pour PHP 7 prennent en charge x64. – alalp