Fixing 403 Error After Submitting Forms with Easy Form Builder in WordPressBeheben des 403-Fehlers nach dem Absenden von Formularen mit Easy Form Builder in WordPressFixing 403 Error After Submitting Forms with Easy Form Builder in WordPress

Wenn nach dem Absenden eines mit Easy Form Builder erstellten Formulars ein 403 Forbidden Error angezeigt wird, wird die Anfrage blockiert, bevor WordPress die Formularübermittlung vollständig verarbeiten kann.

Dieses Problem wird in der Regel nicht durch Easy Form Builder selbst verursacht. In den meisten Fällen entsteht es, weil ein Security-Plugin, eine Firewall-Regel, eine REST-API-Einschränkung, ein blockierter Nonce-Header oder eine Caching-Plugin-Konfiguration den Übermittlungsprozess des Formulars stört.

Easy Form Builder nutzt die WordPress-Anfrageverarbeitung, um Formulare sicher zu übermitteln. Wenn ein anderes Plugin oder ein serverseitiger Schutz die Anfrage blockiert, erforderliche Header entfernt, eine dynamische Formularseite cached oder verhindert, dass die REST-API korrekt funktioniert, kann das Formular mit einem 403-Fehler fehlschlagen.

403 error

Was ist ein 403-Fehler nach dem Absenden eines Formulars?

Ein 403 Forbidden-Fehler bedeutet, dass der Server die Anfrage verstanden hat, die Autorisierung aber verweigert.

Im Zusammenhang mit Easy Form Builder bedeutet dies meistens, dass die Formularübermittlung aus einem der folgenden Gründe blockiert wurde:

  • Ein Security-Plugin hat den Zugriff auf die WordPress REST-API eingeschränkt
  • Eine Firewall- oder WAF-Regel hat die Anfrage als verdächtig eingestuft
  • Der erforderliche X-WP-Nonce-Header wurde blockiert oder entfernt
  • Der REST-API-Zugriff wurde für nicht angemeldete Benutzer deaktiviert
  • Ein Caching-Plugin hat veraltete oder statische Formularinhalte ausgeliefert
  • AJAX oder dynamisches Formularverhalten wurde durch Cache- oder Optimierungseinstellungen unterbrochen

Wenn dies passiert, kann es so aussehen, als würde das Formular gesendet, die Anfrage schlägt jedoch fehl, bevor die Formulardaten verarbeitet werden.


Wer kann diesen Fehler sehen?

Dieser Fehler kann bei unterschiedlichen Benutzergruppen auftreten:

  • Website-Administratoren, die ein Formular auf der WordPress-Website testen
  • Nicht angemeldete Besucher, die ein öffentliches Kontakt-, Registrierungs-, Umfrage- oder Zahlungsformular absenden
  • Kunden, die Bestell-, Buchungs- oder Zahlungsformulare absenden
  • Benutzer, die Dateien über ein Formular hochladen
  • Benutzer, die mehrstufige Formulare oder Formulare mit dynamischen Feldern absenden

Ein häufiges Symptom ist, dass das Formular funktioniert, wenn du als Administrator angemeldet bist, aber bei öffentlichen Besuchern fehlschlägt. Das deutet meistens darauf hin, dass der REST-API-Zugriff für nicht angemeldete Benutzer blockiert wird.


Hauptursachen für den 403-Fehler

1. Security-Plugins blockieren REST-API-Anfragen

Easy Form Builder nutzt WordPress-Endpunkte zur Verarbeitung von Formularübermittlungen. Einige Security-Plugins beschränken oder blockieren REST-API-Anfragen für nicht angemeldete Benutzer.

Das kann Besucher betreffen, weil öffentliche Formularübermittlungen normalerweise von Benutzern ausgehen, die nicht in WordPress angemeldet sind.

Häufige sicherheitsbezogene Ursachen sind:

  • REST-API für nicht angemeldete Benutzer deaktiviert
  • REST-API-Namespaces von Easy Form Builder blockiert
  • X-WP-Nonce-Header entfernt oder blockiert
  • WAF-Regeln erkennen Formulardaten als verdächtig
  • Rate Limiting wird auf Formularübermittlungsanfragen angewendet
  • POST-Anfragen werden durch Login-Schutzregeln blockiert

Wenn ein Security-Plugin die Anfrage von Easy Form Builder blockiert, kann das Formular einen 403-Fehler zurückgeben.

Die vollständige plugin-spezifische Anleitung findest du hier:

Referenz: Kompatibilität von Security-Plugins mit Easy Form Builder – 403-Fehler beheben


2. Caching-Plugins stören dynamische Formulare

Caching-Plugins sind wichtig, um die Performance von WordPress zu verbessern. Formulare sind jedoch dynamische Elemente und sollten nicht immer aus dem Cache ausgeliefert werden.

Wenn eine Seite mit einem Easy-Form-Builder-Formular falsch gecached wird, kann die Formularübermittlung fehlschlagen, die Validierung nicht korrekt funktionieren oder dynamische Felder können sich unerwartet verhalten.

Cache-bezogene Probleme können Folgendes verursachen:

  • Defekte oder nicht übermittelte Formulare
  • Fehlgeschlagene Validierung
  • Veraltete vorausgefüllte Felder
  • Probleme beim Datei-Upload
  • Fehlgeschlagene E-Mail- oder SMS-Benachrichtigungen
  • Fehlerhafte Zahlungs- oder Abonnementverarbeitung
  • Probleme bei der AJAX-Übermittlung

Aus diesem Grund sollten Seiten oder Beiträge, die Easy-Form-Builder-Formulare enthalten, normalerweise vom Full-Page-Caching ausgeschlossen werden.

Die vollständige Caching-Anleitung findest du hier:

Referenz: Easy Form Builder-Formulare von Caching-Plugins in WordPress ausschließen

3. WAF- oder Firewall-Regeln blockieren Formulardaten

Eine Web Application Firewall, auch WAF genannt, kann bestimmte Formularübermittlungen blockieren, wenn sie Sonderzeichen, HTML-ähnliche Eingaben, SQL-ähnliche Begriffe, lange Textfelder, Datei-Uploads oder zahlungsbezogene Daten erkennt.

Das kann bei folgenden Tools passieren:

  • Wordfence Firewall
  • Sucuri Firewall
  • Cloudflare WAF
  • iThemes Security / Solid Security
  • All In One WP Security & Firewall
  • WP Cerber Security
  • Shield Security
  • Serverseitige ModSecurity-Regeln

Wenn die Firewall die Anfrage blockiert, bevor sie WordPress erreicht, kann Easy Form Builder das Formular nicht verarbeiten.

4. Erforderliche Header werden entfernt

Easy Form Builder verwendet eine sichere Anfragevalidierung. Wenn ein Security-Plugin, eine Firewall, ein Proxy, ein CDN oder eine Serverkonfiguration erforderliche Header wie diesen entfernt:

X-WP-Nonce

kann WordPress die Anfrage ablehnen und einen 403-Fehler zurückgeben.

Das kommt besonders häufig vor, wenn strenge Firewall- oder Header-Filterregeln aktiviert sind.

So identifizierst du die Ursache

Befolge diese Schritte, um herauszufinden, was den 403-Fehler verursacht.

Schritt 1: Browser-Entwicklertools öffnen und die Netzwerkanfrage prüfen

Öffnen Sie die Seite Ihrer Website, auf der sich das Formular von Easy Form Builder befindet.

Öffnen Sie anschließend die Entwicklertools Ihres Browsers und wechseln Sie zum Tab Network beziehungsweise Netzwerk.
In diesem Tab können Sie alle Anfragen sehen, die der Browser beim Absenden des Formulars an Ihre WordPress-Website sendet.

So öffnen Sie die Entwicklertools

Windows

In den meisten Browsern, zum Beispiel Chrome, Edge, Firefox oder Brave:

F12

oder:

Ctrl + Shift + I

Klicken Sie anschließend auf den Tab Network beziehungsweise Netzwerk.

macOS / Apple

In Chrome, Edge, Firefox oder Brave:

Command + Option + I

Klicken Sie anschließend auf den Tab Network beziehungsweise Netzwerk.

In Safari müssen Sie möglicherweise zuerst das Entwicklermenü aktivieren:

Safari → Einstellungen → Erweitert → Funktionen für Webentwickler anzeigen

Öffnen Sie danach die Entwicklertools mit:

Command + Option + I

oder über:

Entwickeln → Webinformationen einblenden

Wechseln Sie anschließend zum Tab Network beziehungsweise Netzwerk.

Linux

In den meisten Browsern, zum Beispiel Chrome, Chromium, Firefox, Brave oder Edge:

F12

oder:

Ctrl + Shift + I

Klicken Sie anschließend auf den Tab Network beziehungsweise Netzwerk.

So testen Sie die Formularanfrage

Nachdem Sie den Tab Network beziehungsweise Netzwerk geöffnet haben:

  1. Stellen Sie sicher, dass der Tab Network/Netzwerk geöffnet ist, bevor Sie das Formular absenden.
  2. Klicken Sie im Network-Tab auf Clear beziehungsweise Leeren, um alte Anfragen zu entfernen.
  3. Senden Sie das Easy Form Builder-Formular auf der Seite ab.
  4. Beobachten Sie die neuen Anfragen, die im Network-Tab erscheinen.
  5. Suchen Sie nach einer Anfrage mit rotem Status, fehlgeschlagenem Status oder dem Statuscode 403.
  6. Klicken Sie auf die fehlgeschlagene Anfrage, um sie genauer zu prüfen.
  7. Prüfen Sie die Request URL beziehungsweise Anfrage-URL und den Status Code beziehungsweise Statuscode.

Wenn die fehlgeschlagene Anfrage-URL Folgendes enthält:

/wp-json/

liegt das Problem in der Regel an der WordPress REST-API, einem Sicherheits-Plugin, einer Firewall-Regel, einer fehlgeschlagenen Nonce-Validierung oder einem blockierten Anfrage-Header.

Wenn die fehlgeschlagene Anfrage-URL Folgendes enthält:

admin-ajax.php

kann das Problem mit der AJAX-Verarbeitung, dem Cache, Sicherheitsregeln oder JavaScript-Optimierungen zusammenhängen.

Wenn der Statuscode lautet:

403 Forbidden

bedeutet dies, dass der Server, ein Sicherheits-Plugin, eine Firewall, ein CDN oder die WordPress-Konfiguration die Anfrage zum Absenden des Formulars blockiert hat.

Beispiel

Request URL: https://example.com/wp-json/*
Status Code: 403 Forbidden

Das bedeutet, dass der Endpunkt zum Absenden des Easy Form Builder-Formulars blockiert wurde. Prüfen Sie in diesem Fall Ihr Sicherheits-Plugin, die REST-API-Zugriffseinstellungen, Firewall-/WAF-Regeln und ob der Header X-WP-Nonce entfernt wird.

Schritt 2: Security- und Cache-Plugins vorübergehend deaktivieren

Deaktiviere nur zu Testzwecken vorübergehend:

  • Security-Plugins
  • Firewall-Plugins
  • Caching-Plugins
  • JavaScript-Optimierungsfunktionen
  • CDN-Cache oder WAF-Regeln

Teste das Formular danach erneut.

Wenn das Formular nach dem Deaktivieren eines dieser Tools funktioniert, ist dieses Tool wahrscheinlich die Ursache.

Lasse Security- oder Caching-Funktionen nicht dauerhaft deaktiviert. Verwende stattdessen die folgenden Lösungen.

So behebst du den 403-Fehler

1. REST-API-Endpunkte von Easy Form Builder erlauben

Wenn dein Security-Plugin URL- oder Endpunkt-Ausnahmen erlaubt, setze diese Pfade auf die Whitelist oder erstelle eine Ausnahmeregel:

/wp-json/efb/
/wp-json/emsfb/

Dadurch können Formularübermittlungen von Easy Form Builder passieren, ohne die gesamte REST-API zu öffnen.

Stelle außerdem sicher, dass der folgende Header nicht blockiert oder entfernt wird:

X-WP-Nonce

2. REST-API nicht für öffentliche Formularübermittlungen deaktivieren

Einige Security-Plugins enthalten eine Option wie:

Disable REST API for non-logged-in users

Wenn diese Option aktiviert ist, können öffentliche Besucher möglicherweise keine Formulare absenden.

Du kannst das Problem beheben, indem du entweder:

  • die REST-API-Einschränkung deaktivierst, oder
  • die Einschränkung aktiviert lässt, aber die Easy-Form-Builder-Namespaces erlaubst

Empfohlene Namespaces zum Erlauben:

efb
emsfb

3. Formularseiten vom Cache ausschließen

Ermittle die Seite oder den Beitrag, auf dem das Formular eingebettet ist, zum Beispiel:

/contact/
/register/
/order-form/
/booking/

Gehe anschließend in die Einstellungen deines Caching-Plugins und füge diese URLs zur Ausschlussliste hinzu.

Je nach Plugin kann diese Einstellung zum Beispiel so heißen:

  • Exclude URLs
  • Do Not Cache URLs
  • Never Cache Pages
  • Cache Exclusions
  • Advanced Cache Rules

Nachdem du die Ausnahme hinzugefügt hast, leere den Website-Cache und teste erneut.

4. Alle Cache-Ebenen leeren

Nachdem du die Cache-Einstellungen geändert hast, leere alle Cache-Ebenen, darunter:

  • Cache des WordPress-Caching-Plugins
  • Browser-Cache
  • CDN-Cache
  • Server-Cache
  • Object Cache, falls verwendet

Teste das Formular anschließend in einem Inkognito- oder privaten Browserfenster.

5. JavaScript-Optimierung für Formularseiten deaktivieren

Einige Performance-Plugins optimieren JavaScript, indem sie Skripte verzögern, defer verwenden, kombinieren oder minifizieren.

Diese Funktionen können manchmal das Formularverhalten beeinträchtigen.

Wenn das Formular weiterhin fehlschlägt, schließe die Formularseite von folgenden Optimierungen aus:

  • JavaScript Delay
  • JavaScript Defer
  • JavaScript-Minifizierung
  • JavaScript-Kombination
  • Lazy Loading für Skripte
  • Entfernung ungenutzten JavaScripts

Das ist besonders wichtig bei mehrstufigen Formularen, Zahlungsformularen, Datei-Upload-Formularen und Formularen mit bedingten oder dynamischen Feldern.

6. Firewall- und WAF-Logs prüfen

Wenn du eine Firewall oder ein CDN wie Cloudflare, Sucuri, Wordfence oder eine Hosting-WAF verwendest, prüfe die Firewall-Logs.

Suche nach blockierten Anfragen zu:

/wp-json/efb/
/wp-json/emsfb/

Wenn du blockierte Anfragen findest, erstelle eine Allow-Regel oder Ausnahmeregel für die Formularübermittlungs-Endpunkte von Easy Form Builder.

Plugin-spezifische Hinweise

Wordfence

Prüfe:

Wordfence → Firewall → Firewall Options

Füge die folgenden Pfade bei Bedarf zu den erlaubten oder freigegebenen URLs hinzu:

/wp-json/efb/
/wp-json/emsfb/

Stelle außerdem sicher, dass der REST-API-Zugriff für Easy Form Builder nicht blockiert wird.

iThemes Security / Solid Security

Prüfe die REST-API-Einstellungen unter WordPress Tweaks oder in den Sicherheitseinstellungen.

Nutze nach Möglichkeit den standardmäßigen WordPress-REST-API-Zugriff oder erstelle eine Ausnahme für die Endpunkte von Easy Form Builder.

All In One WP Security & Firewall

Prüfe, ob der REST-API-Zugriff für nicht angemeldete Benutzer deaktiviert ist.

Wenn ja, erlaube die Namespaces von Easy Form Builder oder deaktiviere diese Einschränkung.

Sucuri Security oder cloudbasierte WAF

Wenn du eine Cloud-Firewall verwendest, kann die Blockierung passieren, bevor die Anfrage WordPress erreicht.

Setze diese Pfade auf die Whitelist:

/wp-json/efb/
/wp-json/emsfb/

Stelle außerdem sicher, dass X-WP-Nonce nicht aus den Anfragen entfernt wird.

Caching-Plugins

Bei Caching-Plugins wie WP Rocket, LiteSpeed Cache, W3 Total Cache, WP Fastest Cache, WP Super Cache, FlyingPress, Breeze, Hummingbird, NitroPack oder WP-Optimize solltest du die URL der Formularseite vom Full-Page-Caching ausschließen.

Beispiel:

/contact-us/
/order-form/
/registration/

Leere anschließend den Cache und teste erneut.

Empfohlene Troubleshooting-Checkliste

Nutze diese Checkliste, um die meisten 403-Fehler nach einer Formularübermittlung zu beheben:

  1. Öffne die Browser-Entwicklertools und prüfe die fehlgeschlagene Anfrage.
  2. Bestätige, ob die fehlgeschlagene Anfrage /wp-json/ enthält.
  3. Setze die REST-API-Pfade von Easy Form Builder auf die Whitelist:
    • /wp-json/efb/
    • /wp-json/emsfb/
  4. Stelle sicher, dass X-WP-Nonce nicht blockiert oder entfernt wird.
  5. Erlaube REST-API-Zugriff für öffentliche Easy-Form-Builder-Formularübermittlungen.
  6. Schließe Seiten mit Easy-Form-Builder-Formularen vom Cache aus.
  7. Leere WordPress-, CDN-, Browser- und Server-Cache.
  8. Teste das Formular im Inkognito- oder privaten Modus.
  9. Prüfe Firewall-, WAF- und Security-Plugin-Logs.
  10. Deaktiviere bei Bedarf JavaScript-Optimierung auf der Formularseite.

Ist das ein Fehler in Easy Form Builder?

In den meisten Fällen: nein.

Ein 403 Forbidden Error bedeutet normalerweise, dass die Formularübermittlungsanfrage durch eine Sicherheitsregel, REST-API-Einschränkung, Firewall, ein CDN, eine Cache-Ebene oder eine Serverkonfiguration blockiert wurde.

Easy Form Builder kann das Formular erst verarbeiten, wenn die Anfrage WordPress erfolgreich erreicht. Wenn ein anderes Plugin, eine Firewall oder eine Cache-Ebene die Anfrage vorher blockiert oder verändert, kann die Formularübermittlung fehlschlagen.

Verwandte Anleitungen

Für detaillierte Lösungen lies bitte diese verwandten Anleitungen:

Abschließende Hinweise

Der 403 Forbidden Error nach dem Absenden eines Formulars wird meistens durch einen Konflikt zwischen dynamischer Formularübermittlung und den Sicherheits-, Firewall-, REST-API-, Cache- oder Optimierungseinstellungen deiner Website verursacht.

Die beste Lösung besteht nicht darin, Security- oder Caching-Funktionen vollständig zu deaktivieren. Erlaube stattdessen die erforderlichen REST-API-Endpunkte von Easy Form Builder, bewahre den X-WP-Nonce-Header und schließe Seiten mit Formularen vom Full-Page-Caching aus.

Sobald diese Einstellungen korrekt konfiguriert sind, sollten deine Easy-Form-Builder-Formulare sowohl für angemeldete Benutzer als auch für öffentliche Besucher normal funktionieren.