web-dev-qa-db-fra.com

Comment activer le memcached PHP extension après installation avec homebrew?

J'ai récemment installé memcached avec homebrew , et je ne sais pas trop comment l'activer sur mon environnement PHP puisque j'ai ajouté extension=memcached.so dans /etc/php.ini dans Lion OS X.

Même si j'ai redémarré Apache aussi, rien n'est encore chargé.

Si j'appelle get_loaded_extensions(), je ne vois pas memcached dans la liste, comment puis-je l'activer s'il est installé à partir de l'homebrew?

MODIFIER:

Ce que j'ai fait dans Terminal était:

$ brew install memcached

Il a bien installé, maintenant je suis allé à /etc/php.ini et ajouté:

extension=memcached.so

28
MacMac

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20090626/memcached.so'

C'est l'information que PHP vous donne, respectez-la.

C'est soit:

  • Le fichier que vous avez spécifié n'existe pas. Vérifiez votre système de fichiers.
  • Le fichier que vous avez spécifié ne peut pas être lu par PHP, vérifiez les droits du fichier.
  • Le fichier que vous avez spécifié est incompatible avec votre binaire PHP. Vérifiez si vous avez compilé les bonnes sources et la compilation s’est bien déroulée.
9
hakre

Installez Memcached:

# lists all memcached related packages
brew search memcached

# install memcached as well as memcached extension for PHP
brew install memcached
brew install php54-memcached

# start memcached daemon with 24MB on port 11211 (default)
memcached -d -m 24 -p 11211

Ajoutez à votre fichier php.ini pour ajouter:

extension=memcached.so

Redémarrez php ou php5-fpm et votre serveur. Vérifier:

php -i | grep memcached
# should show memcached version, etc.
41
aleemb

Installer: 

brew install memcached
OR
Sudo pecl install memcached

Ajoutez cette ligne à /etc/php.ini:

extension = memcached.so
OR
extension="/usr/lib/php/extensions/no-debug-non-zts-20090626/memcached.so"

Si vous avez du mal à trouver où il habite

mdfind memcached.so -name
=> /usr/lib/php/extensions/no-debug-non-zts-20090626/memcached.so

Assurez-vous qu'il est exécuté en tant que démon (-d):

/usr/local/bin/memcached -d

Redémarrez Apache:

Sudo apachectl restart
11
jmontross

Vous devrez installer libmemcached avec homebrew, pas seulement memcached. Faire ceci:

brew install libmemcached

Essayez ensuite de recompiler votre module memcache PHP. Devrait être bon pour aller

10
Eric

Commencez par installer la bibliothèque memcached avec:

Sudo pecl install memcached

Ensuite, ajoutez cette ligne à /etc/php.ini:

extension = memcached.so

C'est tout.

7
yegor256

Dans Mac OS X El Capitan, vous pouvez utiliser

brew install homebrew/php/php55-memcached
4
dsandrade

Vous pouvez installer le module memcache.so de la manière suivante:

brew install memcached-php

(Notez que ce qui précède est actuellement cassé si vous ne possédez pas la bonne version de Xcode)

Ensuite, allez dans votre fichier php.ini et ajoutez ce qui suit (Remplacez VERSION par la valeur correcte):

extension="/usr/local/Cellar/memcached-php/VERSION/memcached.so"

Puis redémarrez Apache:

Sudo apachectl restart

Si vous ne savez pas quel fichier php.ini est utilisé, essayez d'appeler la commande phpinfo (). Il vous dira exactement quel fichier php.ini il utilise.

2
Saurav

C'est un 2016, alors essayez:

brew search memcached

Vous trouverez le résultat et installerez quelle version de php vous utilisez.

Je ne sais pas si quelqu'un d'autre cherche encore ça :)

1
Mandeep Gill