Aggiornamento 2 (PROBLEMA RISOLTO):
Il problema era un parametro errato durante la compilazione. Vedi la mia risposta per i dettagli.
Aggiornare:
Il risultato del seguente comando probabilmente fa luce sul problema!
# php-cgi -m
[PHP Modules]
...
PDO
pdo_sqlite
...
Non c'è estensione pdo_mysql qui ... perché ?? Php.ini è uguale a quello utilizzato per PHP nella CLI che carica l'estensione pdo_mysql (tramite extension_dir)
Domanda originale:
PHP 5.5.1 compilato su Ubuntu 12.04
# php -v
PHP 5.5.1 (cli) (built: Aug 22 2013 02:57:03)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
L'estensione MySQL PDO viene caricata sulla CLI:
# php --ri pdo_mysql
pdo_mysql
PDO Driver for MySQL => enabled
Client API version => mysqlnd 5.0.11-dev - 20120503 - $Id: 40933630edef551dfaca71298a83fad8d03d62d4 $
Directive => Local Value => Master Value
pdo_mysql.default_socket => /tmp/mysql.sock => /tmp/mysql.sock
Quando accedo a una pagina usando CGI / FastCGI, l'estensione MySQL PDO non viene caricata
<?php phpinfo(); ?>
PDO
PDO support enabled
PDO drivers sqlite
In entrambi i casi, vengono utilizzati gli stessi file extension_dir e php.ini.
php.ini path: /usr/local/lib/php.ini
extension_dir: /usr/local/lib/php/extensions/no-debug-non-zts-20121212
Contenuti di extension_dir:
#ls /usr/local/lib/php/extensions/no-debug-non-zts-20121212
mcrypt.so opcache.a opcache.so pdo.so pdo_mysql.so
Come posso far funzionare PHP in FastCGI per riconoscere e caricare l'estensione MySQL PDO?