web-dev-qa-db-fra.com

PHP Attention: PHP Démarrage: ????????: Impossible d'initialiser le module

Après avoir mis à jour php de 5.1 à 5.2.10, j'ai reçu les avertissements suivants lorsque php -v:

    # php -v
    PHP Warning:  PHP Startup: fileinfo: Unable to initialize module
    Module compiled with module API=20050922, debug=0, thread-safety=0
    PHP    compiled with module API=20060613, debug=0, thread-safety=0
    These options need to match
     in Unknown on line 0
    PHP Warning:  PHP Startup: mcrypt: Unable to initialize module
    Module compiled with module API=20050922, debug=0, thread-safety=0
    PHP    compiled with module API=20060613, debug=0, thread-safety=0
    These options need to match
     in Unknown on line 0
    PHP Warning:  PHP Startup: memcache: Unable to initialize module
    Module compiled with module API=20050922, debug=0, thread-safety=0
    PHP    compiled with module API=20060613, debug=0, thread-safety=0
    These options need to match
     in Unknown on line 0
    PHP Warning:  PHP Startup: mhash: Unable to initialize module
    Module compiled with module API=20050922, debug=0, thread-safety=0
    PHP    compiled with module API=20060613, debug=0, thread-safety=0
    These options need to match
     in Unknown on line 0
    PHP Warning:  PHP Startup: mssql: Unable to initialize module
    Module compiled with module API=20050922, debug=0, thread-safety=0
    PHP    compiled with module API=20060613, debug=0, thread-safety=0
    These options need to match
     in Unknown on line 0
    PHP Warning:  PHP Startup: readline: Unable to initialize module
    Module compiled with module API=20050922, debug=0, thread-safety=0
    PHP    compiled with module API=20060613, debug=0, thread-safety=0
    These options need to match
     in Unknown on line 0
    PHP Warning:  PHP Startup: tidy: Unable to initialize module
    Module compiled with module API=20050922, debug=0, thread-safety=0
    PHP    compiled with module API=20060613, debug=0, thread-safety=0
    These options need to match
     in Unknown on line 0
    PHP 5.2.10 (cli) (built: Nov 13 2009 11:24:03)
    Copyright (c) 1997-2009 The PHP Group
    Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies

Comment puis-je le réparer? Merci!

15
ohho

On dirait que vous n'avez pas mis à jour les modules PHP, ils ne sont pas compatibles. 

Vérifiez la directive extension_dir dans le fichier php.ini. Il devrait pointer sur dossier avec 5.2 modules. 

Depuis que vous avez mis à jour, il est possible que vous utilisiez le vieux php.ini qui pointe vers les modules 5.1

16
bas

essayez de mettre à niveau chacun de ces modules en utilisant la commande pecl

# pecl upgrade fileinfo
# pecl upgrade memcache
# pecl upgrade mhash
# pecl upgrade readline

etc...

11
Murdani Eko

brew reinstall php56-mcrypt --build-from-source 

Faites ceci - passez l'indicateur --build-from-source - pour chaque module devant être compilé avec la même version.

Cela peut également nécessiter des options PHP en fonction de vos plugins. Si oui, brew reinstall php56 --with-thread-safety

Pour voir toutes les options de php [version], lancez brew options php56 (en remplaçant 56 par votre version)

10
Rahman Malik

Effacez le module qui ne peut pas être initialisé et réinstallez-le.

2
kirisky

Cela m'est arrivé lorsque j'ai essayé d'installer une version plus récente de PHP. Après avoir constaté que je devrais également reconfigurer Apache pour cela, je suis revenu à l'ancienne version PHP. Voici la solution qui a fonctionné pour moi:

remplacez httpd.conf par les versions correctes:

 PHPIniDir ...
 LoadModule php5_module ...

Modifié le 

PATH - Environment Variable

Quand cela ne prend aucun effet

rename or delete the new PHP(-Version)-Folder

Pour une raison quelconque, la dernière étape a fait l'affaire pour moi. Même après un redémarrage, cela n’a eu aucun effet auparavant.

0
hogan

Dans mon cas, avec Windows Server 2008, je devais modifier la variable PATH . L'ancienne version de PHP (VC9) s'y trouvait. 

Je l'ai changé avec la version plus récente de PHP (VC11).

Après un redémarrage d'Apache, tout allait bien.

0
kmas

Ceci décrit simplement pourquoi j'ai eu ce problème au cas où quelqu'un le trouverait utile.

Mon problème était que j'avais mis à niveau php avec homebrew et que j'avais forcé à un moment donné la variable PHP_INI_SCAN_DIR dans mon profil ou mon fichier bashrc, de sorte qu'elle pointait vers l'ancienne version de php. Supprimé cette ligne et corrigé.

0
pcambra

Si vous avez installé php avec homebrew, vérifiez si votre fichier Apache2.conf utilise la version homebrew du fichier php5.so.

0
Pauls Bebris

C'est un vieux fil, mais je suis tombé dessus en essayant de résoudre un problème similaire. 

Pour moi, j'ai eu cette erreur particulière concernant le php_wincache.dll. J'étais en train de mettre à jour PHP du 5.5.38 au 5.6.31 sur un serveur Windows. Pour une raison quelconque, tous les fichiers DLL n'ont pas été mis à jour avec les versions les plus récentes. La plupart l'ont fait, mais d'autres non. 

Donc, si vous obtenez une erreur semblable à celle-ci, assurez-vous que toutes les extensions sont en place et mises à jour .

0
cfnerd