Comment installer les extensions memcache et memcached sous PHP7
Memcache et memcached sont tous deux des extensions PHP du serveur Memcached. Parmi eux, Memcache est apparu plus tôt que Memcache, donc certains anciens codes peuvent encore utiliser l'extension Memcache. Vous pouvez en installer un selon vos besoins. Voici les méthodes d’installation pour les deux.
Memcached est un serveur de cache mémoire distribué hautes performances, et PHP memcache et memcached sont tous deux des extensions PHP du serveur Memcached. Parmi eux, Memcache est apparu plus tôt que Memcache, donc certains anciens codes peuvent encore utiliser l'extension Memcache. Memcached est apparu plus tard et la plupart des frameworks prennent en charge Memcached, qui est désormais relativement populaire.
Installer les dépendances
La première est memcached. Cette extension nécessite la bibliothèque client libmemcached, sinon l'erreur suivante se produira
vérification de l'emplacement libmemcached… configure : erreur : la prise en charge de memcached nécessite libmemcached. Utilisez –with-libmemcached-dir=
pour spécifier le préfixe où se trouvent les en-têtes et la bibliothèque libmemcached
ERREUR : `/var/tmp/memcached/configure –with-libmemcached-dir= non 'échoué
peut être installé par la méthode suivante
[root@lnmp lnmp.cn]# yum install libmemcached libmemcached-devel
pendant que memcache Le module utilise la fonction zlib pour prendre en charge la compression des données, donc l'installation de ce module nécessite l'installation du module Zlib. Sinon, l'erreur suivante se produira :
vérification de l'emplacement de zlib… configure : erreur : la prise en charge de memcache nécessite ZLIB. Utilisez –with-zlib-dir=
include et la bibliothèque se trouvent ERREUR : `/var/tmp/memcache/configure –enable-memcache-session=No' a échoué
Vous pouvez utiliser yum pour l'installer comme suit :
[root@lnmp lnmp.cn]# yum install zlib zlib-devel
Installez l'extension memcached
Essayez de l'installer avec PECL , l'adresse de memcached sur PECL Oui :
https://pecl.php.net/package/memcached
[root@lnmp lnmp.cn]#pecl install memcached
pecl/ memcached nécessite PHP (version >= 5.2.0, version
Aucun package valide trouvé
échec de l'installation
[root@localhost vagrant]#
Il est évident que l'extension memcached sur PECL ne prend en charge que les versions supérieures à PHP 5.2 et inférieures à 6.00. Pas encore mis à jour vers PHP7. Mais heureusement, vous pouvez retrouver leur lien sur github sur la page memcached de PECL :
https://github.com/php-memcached-dev/php-memcached
Voici Le code déjà a une branche qui prend en charge PHP7. Ici, téléchargez le code source dans le répertoire ext du code source PHP :
[root@lnmp lnmp.cn]# cd /usr/local/src/php-7.0.8/ext/
[root@lnmp ext]# git clone https://github.com/php-memcached-dev/php-memcached memcached
[root@lnmp ext]# cd memcached/
checkout vers la branche php7 :
[root@lnmp memcached]# git checkout php7
Branche php7 configurée pour suivre la branche distante php7 depuis l'origine.
Basculé vers une nouvelle branche 'php7'
[root@lnmp memcached]#
Installer avec phpize, mon PHP est installé sous /usr/local/ php7
[root@lnmp memcached]# /usr/local/php7/bin/phpize
[root@lnmp memcached]# ./configure –with-php-config= /usr /local/php7/bin/php-config
Puis make et make install
[root@lnmp memcached]# make
[root@lnmp memcached]# make install
Installation des extensions partagées : /usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/
[root@lnmp memcached]#
Vous pouvez voir que memcached a été installé et que le fichier d'extension a été placé dans le répertoire demandé :
[root @lnmp memcached] # ls /usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/
memcached.so opcache.a opcache.so
[root@lnmp memcached]#
La dernière étape consiste à introduire memcached.so dans php.ini
[root@lnmp memcached]# vim /usr/local /php7/lib/php .ini
Ajouter :
extension=memcached.so
N'oubliez pas de recharger php-fpm pour prendre effect
[root@lnmp memcached]# systemctl reload php-fpm
Ouvrez la page phpinfo et vous avez vu que l'extension memcached a été installée avec succès.
Installez l'extension memcache
Essayez également de l'installer en utilisant PECL :
[root@lnmp memcached ]# pecl install memcache
mais a également échoué
/tmp/pear/temp/memcache/memcache.c:40:40 : erreur fatale : ext/standard/ php_smart_str. h : Aucun fichier ou répertoire de ce type
#include "ext/standard/php_smart_str.h"
^
compilation terminée.
make : *** [memcache.lo] Erreur 1
ERREUR : `make' a échoué
Il semble que la raison soit aussi que PECL ne prend pas en charge l'installation de l'extension memcache sous PHP7,
https://pecl .php.net/package /memcache
n'a pas été mis à jour depuis 2013. Si cette route échoue, nous ne pouvons que trouver un autre moyen et tenter notre chance sur github. Recherchez pecl memcache
https://github.com/search?utf8=%E2%9C%93&q=pecl+memcache&type=Repositories&ref=searchresults
Le premier (https:// github .com/websupport-sk/pecl-memcache) est ce que vous voulez, et le code prend déjà en charge PHP7. Téléchargez le code et compilez-le immédiatement :
[root@lnmp memcached]# cd .. /
[root@lnmp ext]# git clone https://github.com/websupport-sk/pecl-memcache memcache
[root@lnmp ext]# cd memcache
Installer avec phpize, les étapes sont exactement les mêmes que pour memcached
[root@lnmp memcache]# /usr/local/php7/bin/phpize
[root@lnmp memcache] # ./configure –with-php-config=/usr/local/php7/bin/php-config
[root@lnmp memcache]# make
[ root@lnmp memcache]# make install
Installation des extensions partagées : /usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/
[root@ lnmp memcache]#
Similaire à memcached, introduisez memcache.so dans php.ini
[root@lnmp memcache]# vim /usr/local/php7/lib /php.ini
Ajouter :
extension=memcache.so
Enfin recharger php-fpm
[root@lnmp memcache]# systemctl reload php-fpm
Vous avez terminé, vous pouvez voir sur la page phpinfo que memcahce et memchaced ont été installés avec succès
Apprentissage recommandé :Tutoriel vidéo php
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!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Dans le développement Web, nous devons souvent utiliser une technologie de mise en cache pour améliorer les performances du site Web et la vitesse de réponse. Memcache est une technologie de mise en cache populaire qui peut mettre en cache n'importe quel type de données et prend en charge une simultanéité élevée et une haute disponibilité. Cet article explique comment utiliser Memcache dans le développement PHP et fournit des exemples de code spécifiques. 1. Installer Memcache Pour utiliser Memcache, nous devons d'abord installer l'extension Memcache sur le serveur. Dans le système d'exploitation CentOS, vous pouvez utiliser la commande suivante

Pour résoudre le problème du plugin n'affichant pas installé dans PHP 7.0 : Vérifiez la configuration du plugin et activez le plugin. Redémarrez PHP pour appliquer les modifications de configuration. Vérifiez les autorisations du fichier du plugin pour vous assurer qu'elles sont correctes. Installez les dépendances manquantes pour garantir le bon fonctionnement du plugin. Si toutes les autres étapes échouent, reconstruisez PHP. D'autres causes possibles incluent des versions de plugin incompatibles, le chargement d'une mauvaise version ou des problèmes de configuration PHP.

Les solutions courantes pour les environnements de serveur PHP consistent à s'assurer que la version correcte de PHP est installée et que les fichiers pertinents ont été copiés dans le répertoire du module. Désactivez SELinux temporairement ou définitivement. Vérifiez et configurez PHP.ini pour vous assurer que les extensions nécessaires ont été ajoutées et configurées correctement. Démarrez ou redémarrez le service PHP-FPM. Vérifiez les paramètres DNS pour les problèmes de résolution.

Comment définir automatiquement les autorisations d'UnixSocket après le redémarrage du système. Chaque fois que le système redémarre, nous devons exécuter la commande suivante pour modifier les autorisations d'UnixSocket: sudo ...

Causes et solutions pour les erreurs Lors de l'utilisation de PECL pour installer des extensions dans un environnement Docker Lorsque nous utilisons un environnement Docker, nous rencontrons souvent des maux de tête ...

Par rapport à PHP7, PHP8 présente certains avantages et améliorations en termes de performances, de nouvelles fonctionnalités et améliorations de la syntaxe, du système de types, de la gestion des erreurs et des extensions. Cependant, le choix de la version à utiliser dépend de vos besoins spécifiques et des circonstances du projet. Introduction détaillée : 1. Amélioration des performances, PHP8 introduit le compilateur Just-in-Time (JIT), qui peut améliorer la vitesse d'exécution du code ; 2. Nouvelles fonctionnalités et améliorations de la syntaxe, PHP8 prend en charge la déclaration des paramètres nommés et des paramètres facultatifs, création de fonctions L'appel est plus flexible ; des classes anonymes, des déclarations de propriétés de type, etc. sont introduites.

Exécuter plusieurs versions PHP simultanément dans le même système est une exigence commune, en particulier lorsque différents projets dépendent de différentes versions de PHP. Comment être sur la même chose ...

Environnement local : système redhat6.7. nginx1.12.1, php7.1.0, le code utilise le problème du framework yii2 : le site web local doit utiliser le service elasticsearch. Lorsque PHP utilise elasticsearch construit sur un serveur local, la charge locale est normale. Lorsque j'utilise le service elasticsearch d'AWS, la charge sur le serveur local est souvent trop élevée. Vérifiez les journaux nginx et php et ne trouvez aucune exception. Le nombre de connexions simultanées dans le système n’est pas non plus élevé. À ce moment-là, j'ai pensé à un outil de diagnostic strace que notre patron m'a présenté. Processus de débogage : recherchez un sous-processus php idstrace-
