Closed skyynet closed 9 years ago
Hi, ich würde ab Zeile https://github.com/heiseonline/shariff-backend-php/blob/master/src/Backend.php#L60 ein paar Debug-Statements einbauen, um herauszufinden, warum bei dir []
als JSON-Ergebnis ausgeliefert wird. Insbesondere ist ein print_r()
von $results
nach dem Pool::batch()
-Aufruf interessant.
Habe ich gemacht. Da kam aber keine Ausgabe, auch, wenn ich die /shariff/index.php aufrufe :-(
Ok, lokal habe ich's zum Laufen bekommen. Da konnte das cache-Verzeichnis nicht beschrieben werden. Wenn ich dann in die shariff.json als Domain localhost eintrage, kommen die Zähler. Auf dem Server kommen aber keine, auch wenn ich als Domain www.skyynet.de eingebe. Im cache Verzeichnis auf dem Server sehe ich auch genug Inhalt. Es ist also beschreibbar.
Richtig klasse wäre für alle mit Problemen ein Testscript, das einige Checks durchführt und dem User Hinweise gibt. Also cache beschreibbar, Databackend gemäß Eintrag in data-backend gefunden, konfigurierte Domain zulässig für durchgeführte Abfrage, usw.
Da ich meines Wissens alle Voraussetzungen auf meinem PHP Server erfülle, verstehe ich nicht, warum es nicht klappt. Hat noch jemand eine Idee? Ohne Zähler, sieht Shariff irgendwie nackt aus :-(
Please have a look at your PHP error log and post the relevant entries.
hi, Problem wird durch das php-curl interface in Zusammen hang mit ssl/tls verursacht. Eine Lösung (quick aber u. U. dirty/unsicher) ist, die option "CURLOPT_SSL_VERIFYPEER" in dem file CurlFactory.php auf "false" zu setzen.
Hi jschmi01, DANKE!!!!!!!!!! Das hat es gelöst. Im PHP Log war nix und ich war echt am Ende mit meinem (nicht vorhandenem) Latein. Wie kommt es, dass der Fehler auch ohne SSL auftritt? Meine Website kann ja mit und ohne SSL genutzt werden.
hi, die URLs von Facebook und Co. sind HTTPS (SSL) Verbindungen. Die Implementierung des Backends für die HTTPS-Verbindungen ist mit der CURL-Api gebaut. Dabei ist standardmäßig für das SSL-Handshake Protokoll sowohl Client- als auch Server-idenfikation via CA-Certificates eingestellt (CURLOPT_SSL_VERIFYPEER = true). Dafür brauchen dann Client als auch Server bekannte CA-Certificates. Dies ist aber in deinem (wie auch bei meinem Server/Provider) nicht der Fall - die Kommunikation zu Facebook und Co. wird dann mit dem Fehler "unbekanntes Zertifikat" abgebrochen und somit können keine Zähler abgeholt werden.
Danke für die Info. Ich habe ein Wildcard SSL Zertifikat eines von allen Browsern akzeptierten CA. Vielleicht hat Curl aber Probleme mit Wildcard. Da ich keine PHP Errordatei bekam, wußte ich nicht, woran es liegt. Jetzt schon.
Nach einigen Stunden Suche weiß ich leider keine andere Möglichkeit mehr, als hier zu fragen. Ich habe statt der Social Media Buttons nun Shariff bei mir installiert. Funktioniert auch, aber ich bekomme keine Zähler.
Testseite unter www.skyynet.de/_test.htm
Auf meinem Server läuft PHP 5.5, Das Backend liegt unter www.skyynet.de/shariff Die json habe ich konfiguriert unter www.skyynet.de/shariff/shariff.json
Auf der Seite habe ich die Buttons eingebunden über
Wenn ich den testweise http://www.skyynet.de/shariff/?url=http%3A%2F%2Fwww.skyynet.de aufrufe, erhalte ich nur [].