Support » Allgemeine Fragen » XML-RPC funktioniert nicht mehr nach Update auf WP 4.2.3

  • Hallo,

    ich habe vor 2 Tagen auf WP 4.2.3 upgedatet. Seither funktioniert bei mir die XML-RPC Schnittstelle nicht mehr, die ich schon seit mehreren Jahren benutze. Bei mir läuft das ganze so ab, dass ich eine externe XML Datei habe, aus der mein Programm ausliest, was per XML-RPC nach WP gepostet werden soll. Dies können mehrere Einträge sein, von denen jeder einen eigenen Post im WP erzeugt.
    Wenn der Vorgang abgeschlossen ist, trägt mein Programm in die externe XML Datei, für jeden Eintrag die Post ID ein. Ist schon eine Post ID vorhanden, dann wird XML-RPC verwendet um den entsprechenden Post zu aktualisieren.
    Das ganze hat nun mehrere Jahre funktioniert, seit vorgestern, seit ich nun WP 4.2.3 habe, geht es leider nicht mehr.
    Einen Anhaltspunkt habe ich und zwar folgenden: in der externen XML-Datei steht nun als Rückgabewert des XML-RPC Aufrufs nicht mehr die Post ID, sondern folgendes:

    Error (405): XML-RPC-Dienste sind auf diesem Blog deaktiviert. Ein Administrator kann sie hier aktivieren: http://www.mycoolwebsite.de/wp/wp-admin/options-writing.php

    Es sagt mir das XML-RPC-Dienste deaktiviert seien. Wenn ich allerdings auf die Seite options-writing.php gehe, dann gibt es da ja gar nichts mehr zum Einstellen. Wie ich gelesen habe, ist das wohl schon seit WP 3.5 so.

    Wenn ich folgendes aufrufe
    http://www.mycoolwebsite/wp/xmlrpc.php
    bekomme ich folgendes angezeigt:
    XML-RPC server accepts POST requests only.
    Ist dies nicht ein Zeichen dafür dass das XML-RPC generell funktioniert?

    Was kann bei mir nur schief gelaufen sein? Habe ich etwa wirklich das XML-RPC deaktiviert?

    Vielen Dank vorab schon mal.
    🙂

Ansicht von 10 Antworten - 1 bis 10 (von insgesamt 10)
  • Ist dies nicht ein Zeichen dafür dass das XML-RPC generell funktioniert?

    Wenn das die einzige Ausgabe auf einer weißen Seite ist, dann ja.

    Da in 4.2.3 an der Schnittstelle nichts geändert wurde, habe ich keine Ahnung, was da passiert sein könnte, aber andere haben wohl auch Probleme damit:
    https://de.forums.wordpress.org/topic/xml-rpc-schnittstelle-funktioniert-nicht-mehr-live-writer

    Gruß, Torsten

    Thread-Starter reini69

    (@reini69)

    Ich glaube schon dass an der Schnittstelle selbst nichts geändert wurde. Aber könnte es nicht sein, dass die Schnittstelle tatsächlich deaktiviert wäre und deshalb das hier gemeldet wird:

    Error (405): XML-RPC-Dienste sind auf diesem Blog deaktiviert. Ein Administrator kann sie hier aktivieren: http://www.mycoolwebsite.de/wp/wp-admin/options-writing.php

    Und wenn sie tatsächlich deaktiviert ist, wie kann ich sie dann wieder aktivieren? Auf der in der Meldung genannten Seite geht es ja nicht (mehr). Aber wo (oder wie) dann?

    Gruß,
    reini69

    XML-RPC ist standardmäßig aktiviert und hat keine GUI mehr.

    Kann programmatisch per Filter deaktiviert werden:
    add_filter( 'xmlrpc_enabled', '__return_false' );

    Aber das wird nicht durch WP 4.2.3 passiert sein. Der Fehler muss woanders liegen.

    Gruß, Torsten

    Thread-Starter reini69

    (@reini69)

    Diesen Filter habe ich jedenfalls nicht gesetzt. Ich habe schon von diesem Filter gelesen, aber da steht dass man damit auf die von Dir genannte Art das XML-RPC deaktivieren kann. Gibt es denn auch eine Einstellung, mit dem man ihn expliziert aktivieren kann?
    Und wo müsste ich denn nach dem besagten Filter suchen? Wie gesagt, in meinem eigenen Programm habe ich ihn definitiv nicht selbst gesetzt.

    Du schreibst auch es gibt keine GUI mehr, dann ist aber die Meldung, die mir ausgegeben wird, dass ich auf die Seite options-writing.php soll, falsch. Darauf will ich jetzt aber gar nicht rumhacken, mich interessiert eher woher sie denn kommt. Kann man da mal im Source Code nachschauen, von wo sie letztlich ausgegeben wird?

    Gibt es denn auch eine Einstellung, mit dem man ihn expliziert aktivieren kann?

    Er ist standardmäßig aktiviert.

    dann ist aber die Meldung, die mir ausgegeben wird, dass ich auf die Seite options-writing.php soll, falsch.

    Das ist veraltet. Wo steht das denn? So eine Zeile existiert im WordPress-Core der aktuellen Version definitiv nicht. Auch nicht in der Sprachdatei.

    mich interessiert eher woher sie denn kommt

    Das würde mich auch interessieren … Irgendwelche Plugins aktiv?

    Gruß, Torsten

    Thread-Starter reini69

    (@reini69)

    Jetzt habe ich es heraus gefunden. Die Datei xmlrpc.php war auf meinem System zwei mal vorhanden. Und jene Version der Datei, die von meinem Programm aufgerufen wurde, war eine veraltete, die von dem Update letzte Woche nicht verändert wurde. Diese Datei war auch nicht im WordPress Ordner. Nun habe ich mein Programm so verändert, dass tatsächlich die xmlrpc.php verwendet wird, die im WordPress Ordner ist, und schon funktioniert es wieder. 🙂
    Vielen Dank für die Geduld und die Tipps, die mich schließlich in die richtige Richtung gelenkt haben. 🙂

    Wie hast du das im Detail gemacht? Habe das selbe Problem seit dem Update speziell mit dem Windows Live Writer: https://de.forums.wordpress.org/topic/xml-rpc-schnittstelle-funktioniert-nicht-mehr-live-writer

    Thread-Starter reini69

    (@reini69)

    Also mein WordPress liegt bei mir in einem Ordner namens „wp“ (unter dem root Verzeichnis). Darunter sind dann die Standard-Ordner „wp-admin“, „wp-content“ und „wp-includes“. Die Datei xmlrpc.php liegt direkt im Ordner „wp“.
    Nun habe ich aber noch eine alte WordPress Installation auf meinem Server. Diese ist direkt im root Verzeichnis und somit liegt dort ebenfalls noch eine xmlrpc.php (das ist nicht schön, ich weiß, aber es ist nun mal so… 😉 ). Und diese Version der Datei wurde von meinem Anwenderprogramm aufgerufen. Da ich WordPress schon lange nicht mehr upgedatet hatte, waren beide Versionen der xmlrpc.php bis vor kurzem noch gleich und somit hat es auch funktioniert, dass ich die „falsche“ xmlrpc.php aufgerufen habe. Nach dem Update, das im WordPress im Ordner „wp“ gemacht wurde, waren die beiden Versionen aber nicht mehr gleich. Und somit ist mein Aufruf der „alten“ xmlrpc.php immer auf Fehler gelaufen. Wie Torsten Landsiedel angemerkt hat, sogar auf einen Fehler, der veraltet ist.
    Also habe ich in meinem Anwenderprogramm jetzt konsequent auf die neue xmlrpc.php im Ornder „wp“ verwiesen und dann hat es funktioniert.

    Muss das Thema nochmal pushen, da mein problem nach wie vor besteht und ich die von reini69 beschrieben Lösung nich umsetzen kann.

    Funktioniert der Zugriff auf die xmlrpc.php bei Multisites irgendwi anders? Im Grunde benötige ich nur für meine Subdomain blog.sirpreiss.com diese Funktion.

    Das Pushen von Beiträgen ist hier unerwünscht. Wir bitten außerdem auch immer wieder, für neue Fragen einen neuen Thread zu starten, weil Threads sonst nicht als „resolved“ markiert werden können.

Ansicht von 10 Antworten - 1 bis 10 (von insgesamt 10)
  • Das Thema „XML-RPC funktioniert nicht mehr nach Update auf WP 4.2.3“ ist für neue Antworten geschlossen.