Wie aktiviere ich die memcached PHP-Erweiterung nach der Installation mit Homebrew?
Lesezeit: 6 Minuten
MacMac
Ich habe kürzlich memcached mit installiert selbstgebrautich bin mir nicht ganz sicher, wie ich es in meiner PHP-Umgebung aktivieren soll, seit ich es hinzugefügt habe extension=memcached.so in /etc/php.ini unter Lion OS X.
Auch wenn ich Apache neu gestartet habe, wird immer noch nichts geladen.
Wenn ich anrufe get_loaded_extensions()ich sehe memcached nicht in der Liste, wie kann ich es aktivieren, wenn es von Homebrew installiert wird?
BEARBEITEN:
Was ich im Terminal gemacht habe, war:
$ brew install memcached
Es installierte sich gut, jetzt ging ich zu /etc/php.ini und angehängt:
extension=memcached.so
Was sagt Ihr PHP-Fehlerprotokoll über die extension Befehl, den Sie gegeben haben?
– hakre
22. Oktober 2011 um 15:40 Uhr
Es gibt keinen Erweiterungsbefehl. Ich kann in meinem Fehlerprotokoll sehen: PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20090626/memcached.so'
– MacMac
22. Oktober 2011 um 15:44 Uhr
Das ist die Erklärung: PHP kann die von Ihnen bereitgestellte Bibliotheksdatei nicht laden. Kann sein, dass die Datei nicht existiert, kann sein, dass die Datei einfach nicht kompatibel ist.
– hakre
22. Oktober 2011 um 15:52 Uhr
Aber der Grund, warum ich frage, ist, wie man das installierte Memcached mit PHP zum Laufen bringt?
– MacMac
22. Oktober 2011 um 16:00 Uhr
Siehe meine Antwort. Wenn Sie weitere Informationen bereitstellen können, können weitere Informationen bereitgestellt werden. Aber solange du das nicht tust, ist es überhaupt nicht möglich. Ich weiß nicht, was Sie getan haben, daher ist es notwendig, sich an die sachlichen Informationen zu halten, die Sie bereitstellen können. Zum Beispiel die Fehlermeldung, siehe meine Antwort.
– hakre
22. Oktober 2011 um 16:04 Uhr
Memcache installieren:
# 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
Fügen Sie zu Ihrem hinzu php.ini Datei hinzufügen:
extension=memcached.so
Starten Sie php oder php5-fpm und Ihren Server neu. Verifizieren:
php -i | grep memcached
# should show memcached version, etc.
Das hat mir gefehlt: brew install php55-memcached
– David Kuss
3. Dezember 2014 um 22:21 Uhr
Es scheint jetzt, als ob das Hinzufügen von “extension=memcached.so” nicht erforderlich ist, da php beim Start sagt “Additional .ini files parsed => /usr/local/etc/php/5.4/conf.d/ext-memcached.ini”. hat diese Zeile drin.
– Henrijs
13. Dezember 2014 um 6:58 Uhr
Die obige Installation funktioniert für CLI, aber mit Apache funktioniert sie nicht. Irgendeine Idee, wie man Apache reparieren kann, versuche ich, zusätzliche INI in Apache hinzuzufügen, aber auch nicht effektiv. Jede Hilfe wird sehr geschätzt.
– Benutzer269867
27. April 2017 um 23:00 Uhr
Installieren:
brew install memcached
OR
sudo pecl install memcached
Fügen Sie diese Zeile zu /etc/php.ini hinzu:
extension = memcached.so
OR
extension="/usr/lib/php/extensions/no-debug-non-zts-20090626/memcached.so"
Wenn Sie Probleme haben, den Wohnort zu finden, tun Sie dies
Sie müssen libmemcached mit Homebrew installieren, nicht nur mit memcached. Mach das:
brew install libmemcached
Versuchen Sie dann, Ihr Memcache-PHP-Modul neu zu kompilieren. Sollte gut gehen
Und wie würden Sie dann “Ihr Memcache-PHP-Modul neu kompilieren”?
– geoidetisch
12. August 2013 um 14:40 Uhr
brew reinstall memcached
– David Kuss
3. Dezember 2014 um 22:22 Uhr
Tatsächlich war libmemcached auch mein Problem. Ich hatte es bereits installiert, also versuchte ich es brew install libmemcached brew sagte Warnung: libmemcached-1.0.18_1 bereits installiert, es ist nur nicht verlinkt. Also habe ich brew link libmemcached ausgeführt und dann gab es ein Berechtigungsproblem auf /usr/local/include, also habe ich -R diesen Ordner an meinen Benutzer weitergegeben und dann brew link lief gut, und dann funktionierte die Erweiterung, der Fehler ging weg und meine Seite einfach gut geladen.
– phpguru
2. September 2015 um 0:14 Uhr
Installieren Sie zuerst die Memcached-Bibliothek mit:
sudo pecl install memcached
Fügen Sie dann diese Zeile hinzu /etc/php.ini:
extension = memcached.so
Das ist es.
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20090626/memcached.so'
Das ist die Information, die PHP Ihnen gibt, bleiben Sie dabei.
Es ist entweder:
Die angegebene Datei existiert nicht. Überprüfen Sie Ihr Dateisystem.
Die angegebene Datei kann von PHP nicht gelesen werden, überprüfen Sie die Rechte der Datei.
Die angegebene Datei ist mit Ihrer PHP-Binärdatei nicht kompatibel. Überprüfen Sie, ob Sie die richtigen Quellen zusammengestellt haben und die Zusammenstellung gut gelaufen ist.
Ich weiß nicht, wie ich Ihnen weitere Informationen geben soll, überprüfen Sie meine Bearbeitung.
– MacMac
22. Oktober 2011 um 16:26 Uhr
Hast du php auch mit Homebrew installiert? Und befindet sich die .so-Datei in dem Verzeichnis, das PHP erwartet?
– hakre
22. Oktober 2011 um 16:41 Uhr
Nein, ich verwende standardmäßig das mit Lion OS X gelieferte PHP. Es gibt kein memcached.so im Verzeichnis.
– MacMac
22. Oktober 2011 um 17:03 Uhr
Es gibt tatsächlich neinmemcached.so Um mein MacBook habe ich versucht mit der Suche find Befehl und habe es überhaupt nicht gefunden.
– MacMac
22. Oktober 2011 um 17:16 Uhr
Dann erstmal Installieren Sie die Memcache-PHP-Erweiterung (neben dem Server). Ohne die eigentliche Binärdatei der Erweiterung ist es offensichtlich, dass es nicht funktioniert, oder?
– hakre
22. Oktober 2011 um 17:18 Uhr
Sandrade
In Mac OS X El Capitan können Sie verwenden
brew install homebrew/php/php55-memcached
Ich weiß nicht, wie ich Ihnen weitere Informationen geben soll, überprüfen Sie meine Bearbeitung.
– MacMac
22. Oktober 2011 um 16:26 Uhr
Hast du php auch mit Homebrew installiert? Und befindet sich die .so-Datei in dem Verzeichnis, das PHP erwartet?
– hakre
22. Oktober 2011 um 16:41 Uhr
Nein, ich verwende standardmäßig das mit Lion OS X gelieferte PHP. Es gibt kein memcached.so im Verzeichnis.
– MacMac
22. Oktober 2011 um 17:03 Uhr
Es gibt tatsächlich neinmemcached.so Um mein MacBook habe ich versucht mit der Suche find Befehl und habe es überhaupt nicht gefunden.
– MacMac
22. Oktober 2011 um 17:16 Uhr
Dann erstmal Installieren Sie die Memcache-PHP-Erweiterung (neben dem Server). Ohne die eigentliche Binärdatei der Erweiterung ist es offensichtlich, dass es nicht funktioniert, oder?
– hakre
22. Oktober 2011 um 17:18 Uhr
Saurav
Sie können das Modul memcache.so folgendermaßen installieren:
brew install memcached-php
(Beachten Sie, dass das Obige derzeit defekt ist, wenn Sie nicht die richtige Xcode-Version haben.)
Gehen Sie dann zu Ihrer php.ini-Datei und fügen Sie Folgendes hinzu (Ersetzen Sie VERSION durch den richtigen Wert):
Wenn Sie nicht herausfinden können, welche php.ini-Datei verwendet wird, versuchen Sie, den Befehl phpinfo() aufzurufen. Es wird Ihnen genau sagen, welche php.ini-Datei es verwendet.
Das beantwortet deine Frage besser. Sie glauben, Sie haben die PHP-Erweiterung für Memcached installiert, haben aber nur Memcached selbst installiert.
– Brendon Muir
22. März 2012 um 3:58 Uhr
brew install memcached-php gibt Error: No available formula for memcached-php
– jegor256
2. August 2012 um 8:20 Uhr
Was ist die richtige Version von xcode, die dafür benötigt wird? wird es mit 3.2.6 funktionieren?
– Evan
6. September 2012 um 19:45 Uhr
Versuchen Sie: brew install php54-memcached (oder php53, wenn Sie 5.3 verwenden)
– JordanC
5. April 2013 um 10:51 Uhr
Klopfen: brew tap homebrew/dupes;brew tap josegonzalez/homebrew-php (sehen github.com/josegonzalez/homebrew-php ) dann brew install php55-memcached (oder welche Version Sie verwenden).
– msanford
18. August 2013 um 1:02 Uhr
12039300cookie-checkWie aktiviere ich die memcached PHP-Erweiterung nach der Installation mit Homebrew?yes
Was sagt Ihr PHP-Fehlerprotokoll über die
extension
Befehl, den Sie gegeben haben?– hakre
22. Oktober 2011 um 15:40 Uhr
Es gibt keinen Erweiterungsbefehl. Ich kann in meinem Fehlerprotokoll sehen:
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20090626/memcached.so'
– MacMac
22. Oktober 2011 um 15:44 Uhr
Das ist die Erklärung: PHP kann die von Ihnen bereitgestellte Bibliotheksdatei nicht laden. Kann sein, dass die Datei nicht existiert, kann sein, dass die Datei einfach nicht kompatibel ist.
– hakre
22. Oktober 2011 um 15:52 Uhr
Aber der Grund, warum ich frage, ist, wie man das installierte Memcached mit PHP zum Laufen bringt?
– MacMac
22. Oktober 2011 um 16:00 Uhr
Siehe meine Antwort. Wenn Sie weitere Informationen bereitstellen können, können weitere Informationen bereitgestellt werden. Aber solange du das nicht tust, ist es überhaupt nicht möglich. Ich weiß nicht, was Sie getan haben, daher ist es notwendig, sich an die sachlichen Informationen zu halten, die Sie bereitstellen können. Zum Beispiel die Fehlermeldung, siehe meine Antwort.
– hakre
22. Oktober 2011 um 16:04 Uhr