Maison développement back-end Problème PHP L'installation de l'extension PHP ne prend pas effet

L'installation de l'extension PHP ne prend pas effet

Oct 25, 2019 am 09:06 AM
php扩展

L'installation de l'extension PHP ne prend pas effet

L'installation de l'extension php ne prend pas effet ?

Pourquoi le redémarrage de php ne prend-il pas effet après l'installation le module d'extension ? Et des solutions

Dans l'environnement d'exploitation et de maintenance de lnmp, nous constatons souvent que certains modules d'extension dépendants de php ne sont pas installés, ce qui nécessite l'ajout ultérieur de ces extensions modules. Une fois les extensions installées et configurées, vous constaterez souvent qu'après le redémarrage du service php-fpm, ces extensions ne sont pas réellement chargées ! Voici un exemple pour illustrer :

Exemple d'environnement :

Chemin de stockage du package d'installation php : /data/software/php-5.6.10.tar.gz

php Répertoire d'installation : /data/php

[root@zabbix ~]# ll /data/software/php-5.6.10.tar.gz
-rw-r--r-- 1 root root 18306403 6月  11 2015 /data/software/php-5.6.10.tar.gz
[root@zabbix ~]# ll -d /data/software/php-5.6.10
drwxr-xr-x 17 www www 4096 10月 13 19:38 /data/software/php-5.6.10
[root@zabbix ~]# ls /data/php/
bin  etc  include  lib  php  sbin  var
Copier après la connexion

Utilisez la commande php -m et constatez que les extensions bcmath et gettest sont manquantes

[root@zabbix ~]# vim /etc/profile
export PATH=$PATH:/data/php/bin
[root@zabbix ~]# source /etc/profile
 
[root@zabbix ~]# php -m|grep bcmath
[root@zabbix ~]# php -m|grep gettext
[root@zabbix ~]#
Copier après la connexion

Maintenant, commencez à installer bcmatn et gettest extensions

Installez l'extension bcmath

[root@zabbix ~]# cd /data/software/php-5.6.10/ext/bcmath/
[root@zabbix bcmath]# /data/php/bin/phpize
[root@zabbix bcmath]# ./configure --with-php-config=/data/php/bin/php-config
[root@zabbix bcmath]# make && make
.......
Copier après la connexion

Il vous indiquera un répertoire après une compilation réussie

Installing shared extensions:     /data/php/lib/php/extensions/no-debug-non-zts-20131226
Copier après la connexion

Installez l'extension gettext

[root@zabbix ~]# cd /data/software/php-5.6.10/ext/gettext/
[root@zabbix gettext]# /data/php/bin/phpize
[root@zabbix gettext]# ./configure --with-php-config=/data/php/bin/php-config
[root@zabbix gettext]# make && make
.......
Copier après la connexion

Il vous dira après une compilation réussie Un répertoire

Installing shared extensions:     /data/php/lib/php/extensions/no-debug-non-zts-20131226
  
[root@zabbix ~]# ll /data/php/lib/php/extensions/no-debug-non-zts-20131226
Copier après la connexion

Utilisation totale 2336

-rwxr-xr-x 1 root root  380152 10月 13 23:03 bcmath.so
-rwxr-xr-x 1 root root   50376 10月 13 23:31 gettext.so
Copier après la connexion

Configurer php.ini

[root@zabbix ~]# vim /data/php/etc/php.ini
.........
extension_dir = "/data/php/lib/php/extensions/no-debug-non-zts-20131226"
extension=bcmath.so
extension=gettext.so
Copier après la connexion

Redémarrer php. -fpm

[root@zabbix ~]# /etc/init.d/php-fpm restart
Gracefully shutting down php-fpm . done
Starting php-fpm  done
Copier après la connexion

Vérifiez ensuite à nouveau si les extensions bcmath et gettext ont pris effet après leur installation ?

[root@zabbix ~]# php -m|grep bcmath
[root@zabbix ~]# php -m|grep gettext
[root@zabbix ~]#
Copier après la connexion

J'ai constaté que cela n'avait pas pris effet ! pourquoi! ?

C'est parce que php.ini n'a pas été spécifié au démarrage de php-fpm, donc il n'a jamais pris effet !

[root@zabbix etc]# /etc/init.d/php-fpm restart
Gracefully shutting down php-fpm . done
Starting php-fpm  done
[root@zabbix etc]# ps -ef|grep php-fpm
root     19529     1  0 23:37 ?        00:00:00 php-fpm: master process (/data/php/etc/php-fpm.conf)
www      19530 19529  0 23:37 ?        00:00:00 php-fpm: pool www
www      19531 19529  0 23:37 ?        00:00:00 php-fpm: pool www
root     19533 17173  0 23:37 pts/4    00:00:00 grep --color=auto php-fpm
Copier après la connexion

Solution :

1) Spécifiez le fichier php.ini pour démarrer le service php-fpm

[root@zabbix etc]# /etc/init.d/php-fpm stop
Gracefully shutting down php-fpm . done
[root@zabbix etc]# ps -ef|grep php-fpm
root     19541 17173  0 23:38 pts/4    00:00:00 grep --color=auto php-fpm
[root@zabbix etc]# /data/php/sbin/php-fpm -y /data/php/etc/php-fpm.conf -c /data/php/etc/php.ini
[root@zabbix etc]# ps -ef|grep php-fpm
root     19543     1  0 23:38 ?        00:00:00 php-fpm: master process (/data/php/etc/php-fpm.conf)
www      19544 19543  0 23:38 ?        00:00:00 php-fpm: pool www
www      19545 19543  0 23:38 ?        00:00:00 php-fpm: pool www
root     19547 17173  0 23:39 pts/4    00:00:00 grep --color=auto php-fpm
Copier après la connexion

2 ) Si après avoir démarré ce qui précède, l'extension php installée ne prend toujours pas effet ! Ensuite il se peut que le fichier php.ini ne soit pas placé dans le bon chemin (ici j'agrandis directement le répertoire etc de php)

[root@zabbix ~]# ll /data/php/etc/php.ini
-rw-r--r-- 1 root root 73243 10月 13 23:32 /data/php/etc/php.ini
[root@zabbix ~]# cp /data/php/etc/php.ini /data/php/lib/
[root@zabbix ~]# ll /data/php/lib/php.ini
-rw-r--r-- 1 root root 73243 10月 13 23:35 /data/php/lib/php.ini
Copier après la connexion

Puis redémarrez le service php-fpm !

[root@zabbix ~]# /etc/init.d/php-fpm restart
Gracefully shutting down php-fpm . done
Starting php-fpm  done
[root@zabbix ~]# ps -ef|grep php
root     19564     1  0 23:43 ?        00:00:00 php-fpm: master process (/data/php/etc/php-fpm.conf)
www      19565 19564  0 23:43 ?        00:00:00 php-fpm: pool www
www      19566 19564  0 23:43 ?        00:00:00 php-fpm: pool www
root     19568 17173  0 23:43 pts/4    00:00:00 grep --color=auto php
[root@zabbix ~]#
 
最后再次查看bcmath和gettext扩展有没有生效?
[root@zabbix ~]# php -m|grep bcmath
bcmath
[root@zabbix ~]# php -m|grep gettext
gettext
[root@zabbix ~]#
Copier après la connexion

Pour plus de connaissances sur PHP, veuillez visiter le Site Web PHP chinois !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment vérifier quelles extensions sont utilisées en php Comment vérifier quelles extensions sont utilisées en php Aug 01, 2023 pm 04:13 PM

Vous pouvez vérifier quelles extensions sont utilisées par PHP en affichant le résultat de la fonction phpinfo(), en utilisant les outils de ligne de commande et en vérifiant le fichier de configuration PHP. 1. Affichez le résultat de la fonction phpinfo(), créez un script PHP simple, enregistrez ce script sous phpinfo.php et téléchargez-le sur votre serveur Web. Accédez à ce fichier dans le navigateur et utilisez la fonction de recherche du navigateur. Recherchez simplement le mot-clé. "extension" ou "extension_loaded" dans la page pour trouver des informations sur l'extension.

Comment utiliser php pour étendre PDO afin de se connecter à la base de données Oracle Comment utiliser php pour étendre PDO afin de se connecter à la base de données Oracle Jul 29, 2023 pm 07:21 PM

Comment utiliser PHP pour étendre PDO afin de se connecter à la base de données Oracle Introduction : PHP est un langage de programmation côté serveur très populaire et Oracle est un système de gestion de base de données relationnelle couramment utilisé. Cet article explique comment utiliser l'extension PHP PDO (PHPDataObjects) pour se connecter à la base de données Oracle. 1. Installez l'extension PDO_OCI. Pour vous connecter à la base de données Oracle, vous devez d'abord installer l'extension PDO_OCI. Voici les étapes pour installer l'extension PDO_OCI : Assurez-vous

Comment étendre les capacités de génération de rapports de SuiteCRM à l'aide de PHP Comment étendre les capacités de génération de rapports de SuiteCRM à l'aide de PHP Jul 19, 2023 am 10:27 AM

Comment utiliser PHP pour étendre la fonction de génération de rapports de SuiteCRM SuiteCRM est un puissant système CRM open source qui fournit de riches fonctions pour aider les entreprises à gérer les relations clients. L'une des fonctions importantes est la génération de rapports. L'utilisation de rapports peut aider les entreprises à mieux comprendre leur situation commerciale et à prendre les bonnes décisions. Cet article expliquera comment utiliser PHP pour étendre la fonction de génération de rapports de SuiteCRM et fournira des exemples de code pertinents. Avant de commencer, vous devez vous assurer que SuiteCRM est installé.

Premiers pas avec PHP : installation d'extensions PHP Premiers pas avec PHP : installation d'extensions PHP May 20, 2023 am 08:49 AM

Lors du développement avec PHP, nous devrons peut-être utiliser certaines extensions PHP. Ces extensions peuvent nous fournir plus de fonctions et d'outils, rendant notre travail de développement plus efficace et plus pratique. Mais avant d’utiliser ces extensions, nous devons d’abord les installer. Cet article vous expliquera comment installer les extensions PHP. 1. Qu'est-ce qu'une extension PHP ? Les extensions PHP font référence à des composants qui fournissent des fonctionnalités et des services supplémentaires au langage de programmation PHP. Ces composants peuvent être installés et utilisés via le mécanisme d'extension de PHP. L'extension PHP peut nous aider avec

Comment utiliser l'extension geoip de PHP ? Comment utiliser l'extension geoip de PHP ? Jun 01, 2023 am 09:13 AM

PHP est un langage de script côté serveur populaire capable de gérer le contenu dynamique des pages Web. L'extension geoip pour PHP vous permet d'obtenir des informations sur la localisation de l'utilisateur en PHP. Dans cet article, nous verrons comment utiliser l’extension geoip de PHP. Qu'est-ce que l'extension GeoIP pour PHP ? L'extension geoip pour PHP est une extension gratuite et open source qui vous permet d'obtenir des données sur les adresses IP et les informations de localisation. Cette extension peut être utilisée avec la base de données GeoIP, une base de données développée par MaxMin

Extension PHP et gestion des versions PHP de Pagoda Panel Extension PHP et gestion des versions PHP de Pagoda Panel Jun 21, 2023 am 08:49 AM

Pagoda Panel est un panneau de gestion de serveur open source tout en fournissant aux opérateurs de sites Web une gestion pratique de sites Web, de bases de données, de certificats SSL et d'autres services, il fournit également de puissantes fonctions d'extension PHP et de gestion de versions PHP, ce qui facilite la gestion du serveur. efficace. 1. Extension PHP L'extension PHP est un module utilisé pour améliorer les fonctions PHP. En installant des extensions PHP, davantage de fonctions et de services peuvent être implémentés, tels que : accélérateur : l'accélérateur peut améliorer considérablement les performances de PHP et réduire la charge du service en mettant en cache les scripts PHP.

Exploration approfondie du développement d'extensions PHP : découvrir les secrets du développement d'extensions PHP Exploration approfondie du développement d'extensions PHP : découvrir les secrets du développement d'extensions PHP Feb 19, 2024 pm 11:40 PM

Le développement d'extensions PHP est l'art de créer des fonctionnalités personnalisées, d'étendre les fonctionnalités de base de PHP et de créer des applications plus puissantes. Il ouvre de nouvelles possibilités dans le monde PHP, permettant aux développeurs de transcender les limitations fondamentales du langage. Cet article vous fera découvrir le développement d'extensions PHP, vous fournissant des connaissances complètes et des conseils pratiques, des concepts de base aux techniques avancées. Bases du développement d'extensions PHP Avant de commencer le développement d'extensions PHP, vous devez comprendre certains concepts de base. Que sont les extensions PHP ? Une extension PHP est une bibliothèque de liens dynamiques (DLL) qui étend les fonctionnalités de base de PHP et fournit de nouveaux types de données, fonctions et classes. Avantages des extensions PHP Les extensions PHP présentent de nombreux avantages, notamment : l'évolutivité, la flexibilité, l'optimisation des performances et la réutilisation du code. PHP

Le guide complet : Comment lire et traiter des données XML à l'aide de l'extension php SimpleXML Le guide complet : Comment lire et traiter des données XML à l'aide de l'extension php SimpleXML Jul 28, 2023 pm 02:46 PM

Guide complet : Comment lire et traiter des données XML à l'aide de l'extension PHP SimpleXML Introduction : Dans le développement Web moderne, le traitement et la manipulation des données XML sont une tâche très courante. En tant que puissant langage de script côté serveur, PHP fournit une variété d'extensions et de fonctions pour le traitement et la manipulation des données XML. Parmi eux, l'extension SimpleXML est un outil particulièrement utile qui simplifie le processus de lecture et de traitement des données XML. Cet article vous fournira un guide complet sur la façon d'utiliser les extensions PHP

See all articles