Fehlersuche und -behebung

Nach Datenbank-Migration: Produktzugriff geht nicht mehr

Problem

Nach einer Datenbank-Migration können Ihre User nicht mehr auf die gekauften Produkte zugreifen

Ursache

U.U. ist bei der Migration dieser Fehler aufgetreten:

  • bei Datetime-Feldern, die leer waren (also den Wert NULL hatten), wurde durch die Migration 0000-00-00 00:00:00 eingetragen.

Lösung

Um den Fehler zu beheben, müssen Sie direkten Zugriff auf die WordPress-Datenbank haben und sich mit MySQL auskennen. D.h. Sie müssen SQL-Update-Anweisungen lesen, verstehen und ausführen können.

Falls Sie sich nicht mit MySQL auskennen, beauftragen Sie bitte eine Datenbank-Fachmann mit dieser Aufgabe.

Um das Problem zu lösen, gehen Sie wie folgt vor:

Nach der Migration auf Ihrem neuen WordPress-Blog erstellen Sie eine private Dummy-Seite. Fügen Sie dort diesen Shortcode ein:

[ds_sql_upgrade_info]

Dieser Shortcode erzeugt eine Liste von SQL-Anweisungen. Bitte prüfen Sie diese Anweisungen, ob sie wirklich nur Updates enthalten und diese Updates wirklich nur Spalten mit dem Wert 0000-00-00 00:00:00 auf NULL setzen.

Falls alles ok ist, führen Sie die SQL-Anweisungen auf Ihrer Datenbank aus.

Hinweis

Diese Anleitung löst nur Probleme, die nach einer Datenbank-Migration bei DigiMember auftreten können.

Bei anderen Plugins und Themes oder bei WordPress selbst können u.U. ebenfalls Probleme auftreten, wenn Datums- und Zeit-Felder nicht korrekt übernommen wurden.

Ggf. müssen andere Tabellen mit Feldern vom Typ date, datetime oder timestamp, die NULL sein können, korrigiert werden, indem die Werte 0000-00-00 bzw. 0000-00-00 00:00:00 durch NULL ersetzt werden.

Keine Kauf-Benachrichtigungen bei Strato

Lösung:

  1. Einloggen im Strato Kundenservice
  2. Zum Hosting-Paket wechseln
  3. Den Punkt Einstellungen auswählen
  4. Unterpunkt ServerSide Security wählen
  5. Den Punkt ‘Filter für Gästebuchspam’ deaktivieren

SSL-Fehler bei der Verbindung mit Digistore24

Sie möchten DigiMember mit Digistore24 verbinden und erhalten eine Fehlermeldung wie diese:

Fehler beim HTTP-Aufruf durch CURL (# …. )

Hintergrund des Fehlers

Es gibt zwei mögliche Ursachen.

1.Fehlermeldung: cURL error 60: SSL certificate problem: unable to get local issuer certificate

Jedes SSL-Zertifikat (auch das von Digistore24) ist mit einem Root-Zertifikat signiert. Dadurch wird sichergestellt, dass es authentisch ist.

Ihr Webserver prüft das SSL-Zertifikat von Digistore24 (oder anderen Diensten).

Dazu benötigt es ein sogenanntes Root-Zertifikats-Bundle,d.h. eine Sammlung von Root-Zertifikaten.

Wenn diese Sammlung veraltet ist, kann es vorkommen, dass Ihr Webserver neue SSL-Zertifikate nicht prüfen kann, da es nicht über das passende Root-Zertifikat verfügt.

Lösung

Die Lösung ist, die das Root-Zertifikats-Bundle Ihres Webservers auf den aktuellen Stand zu bringen.

Das ist Aufgabe Ihres Webanbieters.

In der Regel wird es ausreichen, die Linux-Distrubition Ihres Webservers auf dem aktuellen Stand zu halten.

Falls dies das Problem nicht löst, ist auch folgender Weg möglich:

  • Ihr Webanbieter lädt ein aktuelles Root-Zertifikats-Bundle herunter – z.B. von hier :

    ACHTUNG: Wir übernehmen keine Garantie für die Vertrauenswürdigkeit dieser Zertifikate – bitte prüfen Sie sie selbst!

  • Und in der php.ini curl anweisen, dieses Root-Zertifikats-Bundle zu verwenden: curl.cainfo="/path/to/downloaded/cacert.pem"

2. Fehlermeldung: SSL connect error

Im Jahr 2014 wurde beim HTTPS-Protokoll „SSLv3“ (oder einfach nur „SSL“) die sog. „Poodle-Attack„-Sicherheitslücke entdeckt. Deshalb sollte SSLv3 nicht mehr genutzt werden.

Für digistore24.com wurde SSLv3 deaktiviert. Statt dessen wird das neuere und sichere Verfahren TLS (oder TLSv1) verwendet.

Wenn Sie die obige Fehlermeldung erhalten, unterstützt Ihre PHP-Installation (genauer: das Curl-Modul) kein TLS.

Lösung

Bitten Sie Ihren Webanbieter, TLS für das Curl-Modul Ihrer PHP-Installation zu aktivieren.

Falls das nicht geht, wechseln Sie zu einem anderen Webanbieter, der die PHP-Installation aktuell hält. Wir haben seit über zehn Jahren sehr gute Erfahrungen mit dem deutschen Anbieter Hetzner gemacht.

Beim Login/Einloggen als Admin habe ich ein Problem

Wenn Sie sich als Admin über eine Seite mit dem Shortcode [ds_login] einloggen, werdnen Sie – genau wie Ihre User – auf die Startseite des Produkts weitergeleitet.

Um das zu verhinden, loggen Sie sich über die URL
https://IHRE-DOMÄNE.DE/wp-admin

Ersetzen Sie dabei https://IHRE-DOMÄNE.DE durch die URL Ihres Blogs.

Dann werden Sie auf das WordPress-Admin-Dashboard weitergeleitet, so dass Sie eventuelle Fehler oder Probleme beheben können.

Fehler: Member-Seiten werden nach Login nicht aufgerufen.

Um herauszufinden wo der Fehler liegt, gehen Sie bitte folgendermaßen vor:
1. deaktivieren Sie alle Plugins ausser DigiMember. Deaktivieren Sie caching, auch serverseitig.
2. aktivieren Sie ein Standardtheme
3. gesamtes System updaten (ggf. Updates manuell erneut aufrufen)
4. versuchen, den beschriebenen Fehler zu reproduzieren. Achtung: Standardtheme, keine weiteren Plugins, kein caching.
5.1 wenn kein Fehler, dann Plugins schrittweise aktivieren und jedes Mal testen
5.2 wenn der Fehler weiterhin besteht, Nachricht an uns mit einem Adminbenutzer supportDM und email support@digimember.de (Passwort per email zusenden)

Wechselwirkungen mit Plugins/Themes – wer ist der Schuldige?

Bevor wir DigiMember ausliefern, testen wir es gründlich.

Es gibt aber unzählige WordPress-Plugins und -Themes – und nicht alle sind auf dem aktuellen Stand oder auch nur gut und zuverlässig programmiert.

Wenn Fehler auftreten, bitten wir Sie vielleicht, zu prüfen, ob hier eine “Wechselwirkung” mit einem anderen Plugin oder mit dem Theme vorliegt.

Wenn wir genau wissen, an welchem Plugin oder Theme es liegt, können wir die Ursache entweder beheben oder dem Autor des Plugins/Themes Hinweise geben, was er ändern muss, damit sein Plugin/Theme andere Plugins nicht mehr stört.

Den Schuldigen finden

Stellen Sie bitte zunächst sicher, dass WordPress, Ihre Plugins und Ihr Theme auf dem aktuellen Stand sind. Falls Updates verfügbar sind, installieren Sie diese. Dies kann den Fehler vielleicht schon beheben.

Plugins prüfen

Um herauszufinden, welches Plugin den Fehler verursacht, machen Sie bitte folgendes:

  1. Deaktivieren Sie alle Plugins außer DigiMember. Prüfen Sie, ob der Fehler weiterhin auftritt. Falls ja, machen Sie weiter im nächsten Abschnitt (Theme prüfen).
  2. Aktivieren Sie ein Plugin nach dem anderen. Prüfen Sie nach jedem Plugin, ob der Fehler noch auftritt.
  3. Wenn Sie ein Plugin haben, bei dem der Fehler auftritt, deaktivieren Sie das Plugin. Aktivieren Sie alle anderen. Wenn der Fehler dann nur mit diesem Plugin auftritt, aber nicht ohne, haben Sie den Schuldigen.

Falls Sie so zu keinem Ergebnis kommen, prüfen Sie bitte das Theme.

Theme prüfen

Aktivieren Sie bitte Testweise ein anderes Theme (z.B. Twenteeleven). Auch wenn die Seite dann komisch oder nicht nutzbar aussieht, prüfen Sie bitte, ob der Fehler dann immer noch auftritt. Falls ja, ist das Theme Schuld. Aktivieren Sie Ihr gewünschtes Theme nach dem Test wieder.

Gibt es bekannte Probleme mit anderen WordPress Plugins und Themes?

Bei WordPress können Plugins sehr viel. Das ist gut, weil Plugins dadurch viele Möglichkeiten schaffen können. Aber auch schlecht, weil jedes Plugin jedes andere stören kann.

Wir haben DigiMember so konzipiert, dass es möglichst wenig von anderen Plugins beeinflusst wird und möglichst wenig Einfluss auf andere Plugins nimmt.

Leider kommt es trotzdem mit einigen wenigen Plugins zu Problemen.

Mit diesen Plugins sind Probleme bekannt:

Avia-Layout-Architect (Pagebuilder)

Hier gibt es eine kleine Eigenheit, wenn ein Besucher kein Zugriff auf die besuchte Seite hat.

Wenn beim Produkt für „Fehler-Behandlung (Zugriff verweigert)“ die Option „Einen Text anzeigen“ oder „Login-Formular anzeigen“ gewählt, wird statt dessen ein nicht änderbarer Text angezeigt.

Der Inhalt ist korrekt geschützt.

Die Optionen „Auf Seite weiterleiten“ oder „Zu URL weiterleiten“ funktionieren korrekt.

Außerdem funktioniert der Shortcode ds_preview nicht korrekt mit dem Pagebuilder. Bitte verwenden Sie den Shortcode ds_if.

Chap Secure Login

Mit diesem Plugin funktioniert der Login über das DigiMember-Loginformular nicht (das vom Shortcode [digimember_open]digimember_login[digimember_close] erstellt wird).

Wenn Sie das Plugin Chap Secure Login unbedingt benötigen, verwenden Ihre Nutzer am besten den Login über https://ihre-domäne.com/wp-login.php.

MailJet

Das MailJet-Plugin überschreibt einfach die Admin-Menü-Einträge anderer Plugins. Dadurch ist dann ein anderes Plugin u.U. nicht im Admin-Menü sichtbar. Davon kann auch DigiMember betroffen sein.Falls Sie das MailJet-Plugin installiert haben, haben Sie u.U. keinen DigiMember-Eintrag im Admin-Menü.

Den Support von MailJet haben wir am 15.01.2013 informiert und einen Bugfix vorgeschlagen. MailJet hat bis heute nicht darauf reagiert.

Wir empfehlen Ihnen, das MailJet-WordPress-Plugin nicht zusammen mit DigiMember zu verwenden.

Für erfahrene WordPress-User: Das Mailjet-Problem beheben.

  • bearbeiten Sie die Datei mailjet-options.php im Verzeichnis wp-content/plugins/mailjet-for-wordpress

  • Suchen Sie den folgenden Programmcode in der Datei. Sie finden ihn vermutlich um Zeile 33 herum.
    So finden Sie die Zeile vor:

add_menu_page(
'Manage your mailjet lists and settings',
'Mailjet',
'manage_options',
'wp_mailjet_options_top_menu',
array($this, 'show_settings_menu'),
plugin_dir_url( __FILE__ ).'/images/mj_logo_small.png',
101);

Ändern Sie dies in genau dieses Text

add_menu_page(
'Manage your mailjet lists and settings',
'Mailjet',
'manage_options',
'wp_mailjet_options_top_menu',
array($this, 'show_settings_menu'),
plugin_dir_url( __FILE__ ).'/images/mj_logo_small.png',
null);

Achten Sie genau darauf, dass Sie dies eine Zeile genau so ändern. Leerzeichen vor oder nach dem Text spielen keine Rolle.

  • Testen Sie, ob Sie den WordPress-Admin-Bereich aufrufen können und ob alle Menü-Einträge vorhanden sind.
  • Beachten Sie, dass Sie diese Änderungen nach jedem Update des Mailjet-Plugins erneut durchführen müssen (bis der Mailjet-Support das Problem endlich behoben hat.)

Optimize Press 1

Falls Optimize Press geschützte Videos anzeigt, klicken Sie hier.

WP Super Cache

Manchmal gibt dieses Plugin die folgende Meldung unsichtbar aus:

WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed!

Dies stört dann Ajax-Aufrufe, die z.B. für den Login benötigt werden.

Wir empfehlen, dieses Plugin nicht zu verwenden oder regelmäßig zu überprüfen, dass die Meldung nicht unsichtbar im HTML-Code auftaucht (dazu können Sie sich den Seitenquell anzeigen lassen und nach “WP Super Cache is installed but broken” suchen).

LeadPages

Es gibt in Verbindung mit diesem Pagebuilder beim Test der Verbindung bei Digistore24 den IPN-Verbindungsfehler:

(bsp. wenn man als Startseite eine Optinseite mit Leadpages eingerichtet hat)

Ihr Server hat NICHT erfolgreich auf unseren IPN Call geantwortet.
Fehlercode: ERROR
Fehlermeldung: Der IPN-Aufruf war nicht erfolgreich. Ihr Zielserver hat eine Antwort gegeben, die auf einen Fehler hindeutet. Die Antwort des Zielservers finden Sie unten unter „Inhalt“. Bitte prüfen Sie die Antwort und setzen Sie sich ggf. mit dem technischen Administrators Ihres Zielservers in Verbindung.

Der HTTP-Request wird nicht von WordPress (und damit nicht von DigiMember) sondern von Leadpages beantwortet.

Falls das so ist, empfehlen wir folgendes zu tun:
– statt der Anbindung über die Digistore-API verwenden Sie die alte Digistore-Anbindung (in DigiMember unter Bezahlanbieter, Typ „Digistore“)
– wenn Sie die Anbindung in DM einrichten, erhalten Sie eine neue IPN-URL
– bei dieser IPN-URL ändern Sie dann den ersten Teil vor den Fragezeichen in: http://ihredomain.de/wp-content/plugins/digimember/ipn.php Die GET-Parameter (hinter dem Fragezeichen) aus der alten IPN-URL müssten dabei erhalten bleiben.
– diese neue IPN-URL können Sie dann testen. Rufen Sie diese einfach im Browser auf. Es muss dann OK erscheinen
– die neue IPN-URL geben Sie dann in Digistore bei der IPN-Anbindung (Typ: DigiMember) an

Wichtiger Tipp: (Falls Sie später ein neues System aufsetzen, ist es vielleicht einfacher, Verkaufsseite (Leadpages) und Mitgliederbreich (DigiMember) in unterschiedliche WordPress-Installationen zu packen (z.B. http://ihredomain.de/ und http://members.ihredomain.de/)).

Einzelne Themes

Falls ein Theme sich nicht an den WordPress-Standard hält, kann es vorkommen, dass eingeloggter User nicht das richtige Menü sehen. Mehr Infos hier.

Falls der Footer “Erstellt mit DigiMember” (mit dem Affiliate-Link) nicht anzeigt wird, ruft das verwendete Theme die WordPress-Funktion wp_footer() nicht auf, wie z.B. beim Theme NotepadChaos. Dies kann nur der Autor des Themes beheben.

Andere Fehler

Falls hier nicht genannte Fehler auftreten, kann die Ursache eine uns noch nicht bekannte Wechselwirkung mit einem Plugin oder Theme sein.

Um herauszufinden, wer der “Schuldige” ist, finden Sie mehr Infos hier.

In seltenen Fällen liegt es auch an der Art und weise, wie der Webspace eingerichtet ist.

Fehlermeldung bei der Installation – was kann ich tun?

Ausgehende HTTP-Aufrufe durch PHP gesperrt

Für Anbindung der Autoresponder und für die Lizenzprüfung führt DigiMember HTTP-Aufrufe durch. Deshalb funktioniert DigiMember nur, wenn HTTP-Aufrufe durch PHP-Skripte möglich sind.

Falls Ihre DigiMember-Lizenz nicht aktiviert werden kann, sind HTTP-Aufrufe für PHP-Skripte vermutlich gesperrt.

Sehr langes WordPress Tabellenprefix

Diese Prefix geben Sie bei der Installation von WordPress an. Standardmäßig ist es “wp_”, sie können aber jeden Wert eingeben. DigiMember funktioniert nur, wenn das Prefix für die Namen der WordPress-Datenbank-Tabellen nicht länger als 35 Zeichen ist. So beheben Sie dieses Problem.

Andere Fehler

Falls hier nicht genannte Fehler auftreten, kann die Ursache eine uns noch nicht bekannte Wechselwirkung mit einem Plugin oder Theme sein. Mehr dazu HIER.

E-Mail-Versand funktioniert nicht. Was kann ich tun

Wenn Sie den SMTP-E-Mail-Versand eingerichtet haben und versucht haben, eine Testmail zu versenden und es kam folgende Fehlermeldung:

"Die E-Mail an name@gmail.com konnte nicht verschickt werden. Bitte prüfe die E-Mail-Adresse und die E-Mail-Einstellungen. (fsockopen() [function.fsockopen]: unable to connect to send.one.com:465 (Connection timed out))"

Dann kann das der Grund dafür sein:

Sie haben entweder die Benutzerdaten oder das Passwort falsch eingegeben oder

Googlemail oder ihr Mail-Anbieter blockt die Anmeldung, weil es davon ausgeht, dass diese nicht berechtigt ist.

Wahrscheinlich erhalten Sie in Kürze eine E-Mail von Ihrem Mail-Anbieter, in der Sie bestätigen müssen, dass Sie dem Prozess zustimmen.

Googlemail versendet z.B. so eine Nachricht in seltenen Fällen:

Aktivieren / Bestätigen Sie, dass es kein Hacker-Angriff ist, sondern dass Sie dafür verantwortlich sind und dann dürfte auch die SMTP-Anmeldung über DigiMember funktionieren.

Login funktioniert nicht trotz richtiger Daten

Fehler: Kunde versucht sich mit seinen Benutzerdaten einzuloggen, es erscheint aber nur das Ladezeichen und es wird keine Login-Seite angezeigt.

Bitte folgende drei Schritte umsetzen, um diesen Fehler zu beheben:

  1. Aktualisieren Sie auf die neueste Version von DigiMember. Hier könnten Sie überprüfen, ob Sie die neueste Version installiert haben.
  2. Deaktivieren Sie alle anderen Plugins, außer DigiMember und probieren Sie, ob der Login mit einem von Ihnen erstellten Benutzernamen/Passwort funktioniert. Falls ja, aktivieren sie einige Plugins wieder nacheinander und lokalisieren auf diese Art und Weise das nicht richtig funktionierende Plugin.
  3. Falls der Fehler auch bei allen deaktivierten Plugins besteht, dann liegt es sehr wahrscheinlich an einem Cache-Plugin, wie z.B. dem “WP Super Cache”, das auch bei deaktiviertem Zustand noch “vorhanden” ist. Konfigurieren Sie dieses Plugin daher richtig oder löschen Sie es komplett, indem Sie auch die Dateien in den verschiedenen Ordnern, das dieses Plugin erzeugt hat, entfernen.

Hat DigiMember Menüpunkte verschwinden lassen?

Manchmal kommt es vor, dass die Menüpunkte eines anderen Plugins verschwinden, wenn DigiMember aktviert ist.

In der Regel ist die Ursache für den Fehler, dass ein Plugin oder ein Theme einen bestimmten Menüpunkt besetzt (z.B. den 7. von oben).

Eigentlich sollen Plugins und Themes ihre Menüpunkte einfach unten anfügen.

Der Fehler liegt dann vermutlich darin begründet, dass DigiMember den
verschwundenen Menü lediglich unter auf einer bestimmten Position festgelegten Menüpunkt schiebt.

Da ist aber nicht DigiMember Schuld, sonder das Plugin oder Theme, dass den festen Menüpunktplatz beansprucht.

Um das zu überprüfen, müssen alle Plugins außer DigiMember und das Plugin mit verschwundenen Menüpunkt deaktivert werden und ein Standard-Theme (z.B. Twenty-Twelve) eingestellt werden.

DigiMember-Nutzer haben uns berichtet, dass die eigentliche Ursache ein “Maintencance-Mode”-Plugin ist. Der Fehler kann aber auch mit anderen Plugins auftreten.

Ein Technischer Hinweis: Der Fehler kann auftreten, wenn ein Plugin die Funktion add_menu_page nutzt und dabei eine feste Position angibt.

Ich erhalte die Fehlermeldung “Allowed Memory Size exhausted”

Immer wieder kann es vorkommen, dass uns plötzlich eine Fehlermeldung wie

Fatal error: Allowed memory size of 654321 bytes exhausted (tried to allocate 12345 bytes) in /srv/www/user/ordner/weiterer_ordner/file.php on line 123

Oder so ähnlich auf dem Bildschirm anstarrt.

Dies ist keine Fehler in DigiMember sonder resultiert auf einer Speicherbegrenzung für Website Installationen der Webspaceanbieter. Schließlich sind auf einem Server etliche Kunden gehostet.
Es soll damit verhindert werden dass sich einzelne Installationen Unmengen von Speicher reservieren und so die anderen Kunden zu kurz kommen.

Es wird dringend empfohlen Kontakt mit dem Support des Hosters aufzunehmen. Dort erfährt man in der Regel welche Änderungen vorgenommen werden sollen oder dürfen. Sollte vom Support keine oder unzureichende Hilfe geboten werden besteht die Möglichkeit das Limit in der Datei wp-config.php hoch zu setzen.

Dazu loggt man sich mit einem ftp-Client, zum Beispiel FileZilla auf seinem Account ein und navigiert auf das Hauptverzeichnis seiner WordPress Installation.Dieses Verzeichnis sieht dann so aus:

Die Datei die geändert werden muss ist also wp-config.php.
Zum Öffnen bitte mit der rechten Maustaste markieren und dann auf

Ansehen/Bearbeiten anklicken damit sich der Editor öffnet.

Dann folgenden Code direkt in Zeile 2 nach dem „<?php“ eingeben:

define('WP_MEMORY_LIMIT', '32M');

Die Änderung speichern und nicht vergessen die geänderte Datei auf den Server wieder zu überspielen.