Support » Themes » FSE TwentyTwetyThree: WP-Json-Fehler? Rest-API-Fehler?

  • Gelöst laluluny

    (@laluluny)


    Hi,

    offenbar ist bei mir gerade der Wurm drin… irgendwas stimmt nicht. Aber der Reihe nach:
    Installiert WP 6.3, PHP Version 8.0, Theme Child von TT3
    Lief alles easy bis gestern… heute habe ich die Seite „publiziert“, d.h. vom Unterverzeichnis auf Hauptverzeichnis umgestellt (= index.php und .htaccess kopiert und nochmal ins Hauptverzeichnis abgelegt, dann Permalinks alktualisiert.

    Webstite-Zustand ist GUT, läuft eigentlich alles – Bericht s. unten verlinkt

    Aber es gibt trotzdem Fehler:

    1) Wenn ich den FSE-Editor (Design->Website-Editor) lade, lädt er kurz, zeigt mir auch kurz die Übliche Vorschau – und stürzt dann ab, ich kriege nur noch eine schwarze Seite. (Lief vorher super, ich habe die ganze Seite damit gestaltet)

    2) Wenn ich im Block-Editor Änderungen an einer Seite vornehme – es gab falsche Verlinkungen wegen dem Umzug ins Hauptverzeichnis), kann ich die Seite nicht mehr abspeichern. Ich habe das jetzt gelöst, indem ich mir den alten „Classic Editor“ installiert habe und die Links dort aktualisiert habe – das funktionierte dann auch tatsächlich.

    3) In meiner Verzweiflung – s. 2), ich konnte die falschen Links nicht aktualisieren – wollte ich mir das Plugin „Redirection“ installieren und Umleitungen bauen. Geht nicht. D.h. installieren schon, aber einrichten nicht. Der Test, ob die REST-API funktioniert läuft ewig und ergibt Fehler – irgendwas mit wp-json. Ich hänge den Fehlerbericht mal an.

    URL: REST-API-Fehler (Screenshot): https://wolfieswish.eu/wolfie/wp-content/uploads/2023/09/Screenshot-2023-09-09-at-17-12-17-Redirection-‹-Wolfies-Wish-—-WordPress.png
    (Der Balken verdeckt lediglich die Zusammenfassung: Die REST-API funktioniert nicht…)

    Bericht Website-Zustand: https://wolfieswish.eu/wolfie/wp-content/uploads/2023/09/Website-Zustand.txt

    Irgendwelche Ideen?
    Danke und Grüße
    Karin

    Die Seite, für die ich Hilfe brauche: [Anmelden, um den Link zu sehen]

Ansicht von 9 Antworten - 1 bis 9 (von insgesamt 9)
  • Moderator Hans-Gerd Gerhards

    (@hage)

    Hallo,
    sichere doch bitte per FTP zunächst die .htaccess. Lösche anschließend die Datei .htaccess (du kannst sie auch vorsichtshalber einfach umbenennen). Geh anschließend in Einstellungen > Permalinks und bestätige einfach die aktuelle Einstellung. Die .htaccess wird dabei neu erstellt.

    Viele Grüße
    Hans-Gerd

    Thread-Starter laluluny

    (@laluluny)

    Lieber Hans-Gerd,

    du bist der Hammer! Ich habe es so gemacht und beide .htaccess gelöscht (es war eine .htaccess im Hauptverzeichnis und eine weitere im Unterverzeichnis, wo WP installiert war). Dann Permalinks neu abgespeichert, kurzzeitig stieg das System aus (Fehlermeldung), dann habe ich die Seite neu geladen & alles funktioniert. ALLES.

    Ich habe festgestellt, dass es jetzt nur noch eine einzige .htaccess gibt, und zwar im Hauptverzeichnis. Ist das korrekt so? Just for the record, denn ich dachte, wenn man WP in einem Unterverzeichnis installiert hat, braucht man 2 x die index.php und auch 2 x die .htaccess – eben jeweils eine im Haupt- und Unterverzeichnis.

    Aber auf jeden Fall DANKE für die coole Lösung, ich habe heute echt den ganzen Tag an diesem Problem herumgepusselt!

    Viele Grüße
    Karin

    Moderator Hans-Gerd Gerhards

    (@hage)

    Liebe @laluluny
    freut mich sehr, dass du es damit lösen konntest.
    Sorry, aber ob im Unterverzeichnis eine .htaccess benötigt wird, kann ich leider nicht sagen, weil ich so in der Art, wie du das machst, nicht vorgehe.
    Aber evtl. hilft dir hier der Beitrag von @pixolin, wenn ich deine Vorgehensweise richtig verstehe.

    Kannst du das Thema dann bitte als gelöst markieren, wenn das Problem damit für dich behoben ist:
    Gelöst
    Die Option findest du rechts in der Sidebar. Danke.

    Viele Grüße
    Hans-Gerd

    Thread-Starter laluluny

    (@laluluny)

    Lieber @hage,

    der von dir verlinkte Artikel erstaunt mich doch sehr: die wp-config.php ins Hauptverzeichnis verschieben? Davon habe ich ja noch nie gehört (und es entsprechend auch noch nie gemacht).

    Ich bin sonst eher immer Anleitungen wie dieser hier gefolgt: https://www.rietsch-design.de/wordpress-installation-unterverzeichnis-hauptdomain-aufrufen.html , d.h. sowohl index.php und auch .htaccess in BEIDEN Verzeichnissen, wo bei in der index.php im Hauptverzeichnis der Pfad angepasst werden muss.

    Allerdings gibt es bei der o.g. Seite in den Kommentaren den Verweis auf eine Fehlermeldung beim Theme TwentyTwentyTwo mit weiteren Verweisen und einem Bug Report.

    Auch hier ist eine Anleitung, bei der beide Dateien verschoben werden: https://developer.wordpress.org/advanced-administration/server/wordpress-in-directory/ Punkt 7; Und wenn ich Punkt 11 richtig verstehe, hat die .htaccess im Hauptverzeichnis aber Priorität, d.h. zur Not geht es wohl ohne die .htaccess im Unterverzeichnis, aber die im Hauptverzeichnis ist ein Muss (bzw. wird erzeugt, falls beschreibbar).

    Womit wir wieder bei deinem TRICK für mich wären…

    Danke und viele Grüße!
    Karin

    • Diese Antwort wurde geändert vor 2 Wochen, 6 Tage von laluluny.

    … der von dir verlinkte Artikel erstaunt mich doch sehr: die wp-config.php ins Hauptverzeichnis verschieben?

    Das erläutere ich gerne:

    Die .htaccess sorgt dafür, dass „sprechende Permalinks“ (also URLs, die den Namen der Webseite enthalten) zugeordnet werden können. Dabei wird jeweils geprüft, ob die per URL aufgerufene Datei oder Verzeichnis vorhanden sind (es gibt z.B. eine Datei wp-login.php oder ein Verzeichnis wp-admin, die jeweils direkt aufgerufen werden können, aber kein Verzeichnis ueber-uns, das erst als Webseite „Über uns“ aufgelöst werden muss). Wenn nicht, wird die Anfrage an die index.php weitergeleitet, die dann wiederum eine Reihe von Skripten auslöst. Hast du die WordPress-Dateien in einem anderem Unterverzeichnis, muss in der index.php der Pfad angepasst werden, damit diese Skripte aufgerufen werden können.

    Da sich die .htaccess-Regeln auf Unterverzeichnisse vererben, sofern im Unterverzeichnis nicht eine abweichende .htaccess exisiert, brauchst du grundsätzlich* nur eine .htaccess.
    (*Mitunter wird aber z.B. im Verzeichnis wp-content/uploads eine zusätzliche .htaccess angelegt, mit der die Ausführung von PHP-Skripten in diesem Verzeichnis ausgeschlossen wird. Dass soll sicherstellen, dass keine Malware-Skripte als Dateiupload eingebunden werden können. Wir sprechen hier aber schon von einem Spezialfall.)

    Die Konfigurationsdatei wp-config.php wird üblicherweise im Web-Stammverzeichnis zusammen mit den anderen WordPress-Dateien abgelegt. Aus Sicherheitsgründen kann die Datei aber auch in das nächsthöhere, für Webseitenbesucher nicht erreichbare Verzeichnis verschoben werden (was kontrovers diskutiert wurde, vgl. Securing wp-config.php).
    Findet WordPress die Datei nicht im Verzeichnis mit den WordPress-Dateien, wird geprüft ob a) die Datei im nächsthöheren Verzeichnis liegt und b) in diesem Verzeichnis keine anderen WordPress-Dateien liegen (um auszuschließen, dass mehrere WordPress-Installationen ineinander verschachtelt installiert wurden und dabei auf die falsche wp-config.php zugegriffen wird). (vgl. https://core.trac.wordpress.org/browser/trunk/src/wp-load.php#L47)

    Werden auf einem Webserver mehrere Webanwendungen parallel betrieben (z.B. zwei oder mehr eigenständige WordPress-Installationen oder eine WordPress-Installation, eine Analyse-Software wie Matomo, eine Cloud-Lösung wie Nextcloud …), ist es zur Vermeidung eines heillosen Durcheinander sinnvoll, die Installationen in eigenen Verzeichnissen anzulegen. Dazu gibt es in der Dokumentation eine eigene Seite: Giving WordPress Its Own Directory.
    Die Dokumentation unterscheidet zwei Varianten, bei der entweder alle Webseitenzugriffe in das Unterverzeichnis weitergeleitet werden oder (bei einer Installation, die bereits im Unterverzeichnis erfolgt ist) die index.php und .htaccess in das Web-Stammverzeichnis kopiert werden. Die zweite Variante ist häufiger anzutreffen.

    Über die wp-config.php lässt sich die Dokumentation an dieser Stelle nicht weiter aus, aber die Datei kann wie beschrieben sowohl im Web-Stammverzeichnis als auch im Verzeichnis mit den WordPress-Dateien liegen. Mir persönlich ist es lieber, die wp-config.php sofort (und nicht erst nach Aufruf eines Unterverzeichnisses) zu sehen, weil hier (im Gegensatz zu allen anderen Core-Dateien) gelegentlich Anpassungen nötig sind und ich dazu nicht lange suchen möchte. Deshalb meine Empfehlung, die Datei zu verschieben.
    Dass die .htaccessnicht zwingend kopiert werden muss, weil sie sich auf Unterverzeichnisse vererbt, habe ich bereits erläutert.

    Nachtrag: In den erwähnten Kommentaren zur von dir genannten Anleitung wird empfohlen, die URL für siteurl und home über Konstanten in der wp-config.php vorzugeben:

    define('WP_HOME','https://www.beispielurl.de');
    define('WP_SITEURL','https://www.beispielurl.de');
    // Quelle: https://bit.ly/3sO3WLm

    Das funktioniert zwar, ist aber nicht ideal, weil dadurch eine spätere Änderung in Einstellungen > Allgemein blockiert wird (Felder werden ausgegraut, weil die Einstellung per Konstante fest vorgegeben wurde). Ich empfehle deshalb, die URLs nach Möglichkeit nicht per Konstante vorzugeben, sondern (nach einem Backup) direkt in der Datenbank zu ändern.
    Die Verwendung der Konstante ist sinnvoll, wenn eine Website laufend zwischen Servern für Staging und öffentlich zugängliche Website hin- und hergeschoben werden. Sie kann auch als Notlösung verwendet werden, weil dieser Weg wie gesagt funktioniert, aber eben auch den Wartungsaufwand (etwas) erhöht.

    • Diese Antwort wurde geändert vor 2 Wochen, 6 Tage von Bego Mario Garde. Grund: Nachtrag

    @pixolin
    danke für die wieder einmal sehr ausführliche und hilfreiche Erläuterung. 😊

    Ja, etwas lang geworden, Sorry.

    @pixolin
    wieso sorry? – nene, perfekt erklärt und ich habe auch wieder etwas dazu gelernt. 😊

    Thread-Starter laluluny

    (@laluluny)

    Lieber @pixolin, lieber @hage,

    Danke für diese ausführlichen Infos – damit ist dieser Thread echt wertvoll geworden finde ich, viele wichtige Infos, wichtiges WP-Wissen!

    Die Schlagworte habe ich entsprechend angepasst. 🙂

    Viele Grüße
    Karin

Ansicht von 9 Antworten - 1 bis 9 (von insgesamt 9)