Schienen + Dalli memcache gem: DalliError: Kein server verfügbar
Hallo, ich habe Probleme beim einrichten meines Rails-Projekt auf meinem server da apache hält Klagen
DalliError: No server available
.
Ich installiert memcached
auf meinem ubuntu-Rechner, aber es funktioniert immer noch nicht. Mein rails-Projekt hat auch config.cache_store = :dalli_store, 'localhost:11211', { :namespace => "production" }
in environments/production.rb. Wie kann ich das Debuggen?
Mein log zeigt vor jeder Anfrage:
localhost:11211 failed (count: 6)
DalliError: No server available
telnet 11211:
root@s2:/usr/local/www/production/current/log# telnet localhost 11211
Trying 127.0.1.1...
telnet: Unable to connect to remote host: Connection refused
InformationsquelleAutor der Frage Edmund | 2013-08-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich hatte das gleiche problem.
Zuerst installierte ich memcached als ein Juwel
gem install memcached
und bekam die Fehlermeldung "DalliError: Kein server verfügbar"
Dann ich installierte memcached-by-doing
sudo apt-get install memcached
.Es funktioniert jetzt.
InformationsquelleAutor der Antwort Sagar A
Wenn Sie eine Homebrew-Benutzer:
Überprüfen Sie, ob der Dienst ausgeführt wird:
Wenn nicht, starten Sie es:
InformationsquelleAutor der Antwort Bryan Ash
War es, weil sich jemand verändert die
/etc/hosts
- Datei, um127.0.1.1
zu localhost, anstatt127.0.0.1
. Nach der änderung, dassmemcached
gearbeitet.InformationsquelleAutor der Antwort Edmund
Akzeptierte Antwort wird wahrscheinlich lösen das Problem für 95% der Menschen, die sehen, diesen Fehler, aber in meinem Fall fand ich die Frage viel grundlegender:
Vom server, ich war nicht in der Lage zu
ping 127.0.0.1
. Dies bedeuteteDalli
konnte keine Verbindung zummemcache
- server, der standardmäßig läuft auf127.0.0.1:11211
.Gibt es eine Reihe von Dingen, die könnte dieses Problem verursachen, aber die meisten wahrscheinlich ist es einfach eine fehlende Netzwerk-Schnittstelle. Wenn Sie
ifconfig
Sie sollte sehen Sie etwas wie dies in der Ausgabe:Wenn dieses fehlt, sicherzustellen, dass Ihre
/etc/network/interfaces
- Datei enthält die folgenden lokalen Schnittstellen-definition:Und dann einen Neustart des networking-Dienstes:
InformationsquelleAutor der Antwort Tom Lord