HTTP 405 Method Not Allowed: Was der Fehler bedeutet und wie du ihn behebst
- HTTP & Statuscodes
- Jason Carter
Der HTTP-Statuscode 405 Method Not Allowed tritt auf, wenn dein Webserver eine Anfrage mit einer HTTP-Methode erhält, die für die angeforderte Ressource nicht erlaubt ist. Dieser Fehler kann dazu führen, dass Formulare nicht funktionieren, API-Anfragen scheitern oder bestimmte Seiten deiner Website nicht erreichbar sind. Anders als bei einem 404-Fehler existiert die Ressource und ist erreichbar, nur die verwendete Methode wird blockiert.
Für Website-Betreiber ist es wichtig zu verstehen, dass der 405-Fehler oft durch Hosting-Einstellungen, Webserver-Konfigurationen oder Sicherheitsmaßnahmen verursacht wird. Dieser Artikel erklärt die technischen Hintergründe, zeigt dir die häufigsten Ursachen und liefert konkrete Lösungswege für verschiedene Hosting-Umgebungen von Shared Hosting über WordPress bis zu VPS-Servern.
Du erfährst, wie du den Fehler erkennst, welche Schritte zur Diagnose notwendig sind und wie du ihn dauerhaft behebst. Dabei gehen wir auf spezifische Szenarien ein, von Apache- und Nginx-Konfigurationen bis zu CMS-bedingten Problemen und Provider-Einschränkungen.
Was ist der HTTP-Statuscode 405 Method Not Allowed
Der Statuscode 405 gehört zur Klasse der 4xx-Fehler und signalisiert ein Problem auf Clientseite der HTTP-Kommunikation. Er bedeutet konkret, dass der Server die verwendete HTTP-Methode zwar kennt und grundsätzlich unterstützt, die angefragte Ressource diese Methode aber nicht zulässt. Ein klassisches Beispiel: Du versuchst, Daten per POST an eine HTML-Seite zu senden, der Server erlaubt für diese Datei aber nur GET-Anfragen.
Gemäß der HTTP-Spezifikation muss der Server bei einer 405-Antwort einen Allow-Header mitliefern. Dieser Header listet alle HTTP-Methoden auf, die für die betroffene Ressource erlaubt sind. Ein typischer Allow-Header könnte so aussehen: „Allow: GET, POST, OPTIONS“. Diese Information hilft dir bei der Fehlersuche, denn sie zeigt direkt, welche Methoden du verwenden darfst.
Die Unterscheidung zwischen „Methode nicht unterstützt“ und „Methode nicht erlaubt“ ist wichtig. Wenn der Server eine Methode überhaupt nicht kennt, würde er mit dem Statuscode 501 Not Implemented antworten. Bei 405 kennt er die Methode, hat aber entschieden, sie für diese spezifische Ressource zu blockieren. Diese Blockierung kann verschiedene Gründe haben: Sicherheitsrichtlinien, bewusste Konfigurationsentscheidungen oder technische Einschränkungen deines Hosting-Pakets.
Ein weiterer möglicher Auslöser sind unzureichende Berechtigungen auf Dateisystemebene. Selbst wenn die Methode prinzipiell erlaubt ist, kann der Webserver sie nicht ausführen, wenn ihm die notwendigen Schreibrechte für die Zieldatei fehlen. In solchen Fällen reagiert der Server ebenfalls mit einem 405-Status, obwohl das eigentliche Problem in der Rechteverwaltung liegt.
So unterscheidet sich 405 von anderen HTTP-Fehlern
Viele HTTP-Statuscodes wirken auf den ersten Blick ähnlich, haben aber unterschiedliche Ursachen und erfordern verschiedene Lösungsansätze. Die richtige Einordnung hilft dir, schnell die passende Strategie zur Fehlerbehebung zu wählen und zu entscheiden, ob du das Problem selbst lösen kannst oder den Support deines Hosting-Anbieters kontaktieren musst.
405 vs 404 Not Found
Der Unterschied zwischen diesen beiden Fehlern ist fundamental: Ein 404-Status bedeutet, dass die angeforderte Ressource auf dem Server nicht existiert. Die URL führt ins Leere. Bei einem 405-Fehler hingegen existiert die Ressource sehr wohl. Sie ist erreichbar und vorhanden. Das Problem liegt ausschließlich in der verwendeten HTTP-Methode.
Ein praktisches Beispiel verdeutlicht dies: Deine Kontaktseite unter /kontakt.html ist per GET-Anfrage problemlos aufrufbar und wird im Browser korrekt angezeigt. Sobald du aber versuchst, das Kontaktformular abzusenden und der Browser eine POST-Anfrage an dieselbe URL sendet, erhältst du einen 405-Fehler. Die Seite existiert, aber POST ist für diese Ressource nicht erlaubt.
405 vs 403 Forbidden
Ein 403-Status signalisiert fehlende Zugriffsrechte. Der Server hat die Anfrage verstanden, verweigert aber die Ausführung aufgrund von Authentifizierungs- oder Autorisierungsproblemen. Typische Szenarien sind geschützte Admin-Bereiche ohne gültige Anmeldung oder IP-basierte Zugriffsbeschränkungen.
Der 405-Fehler hat nichts mit Zugriffsrechten im Sinne von Authentifizierung zu tun. Die Anfrage scheitert nicht, weil du nicht berechtigt bist, sondern weil die gewählte HTTP-Methode für die Ressource technisch nicht vorgesehen ist. Ein 403 tritt bei geschützten Bereichen auf, ein 405 bei falscher Methodenwahl auf öffentlichen Seiten.
405 vs 400 Bad Request
Der Statuscode 400 ist ein allgemeiner Fehler, der auftritt, wenn der Server die Anfrage aufgrund fehlerhafter Syntax nicht verarbeiten kann. Ursachen können ungültige Header, fehlerhafte Parameter, falsch formatierte JSON-Daten oder andere strukturelle Probleme in der Anfrage sein. Der 400-Fehler ist bewusst unspezifisch und deckt viele verschiedene Fehlertypen ab.
Im Gegensatz dazu ist der 405-Fehler hochspezifisch. Er bezieht sich ausschließlich auf die HTTP-Methode. Die Anfrage ist syntaktisch korrekt und der Server kann sie problemlos verarbeiten. Nur die verwendete Methode ist für diese Ressource nicht zulässig. Während ein 400-Fehler viele mögliche Ursachen hat, gibt es bei 405 eine klar definierte Fehlerquelle.
Übersichtstabelle der wichtigsten HTTP-Statuscodes
| Statuscode | Bedeutung | Typische Ursache im Hosting |
|---|---|---|
| 400 Bad Request | Fehlerhafte Anfrage-Syntax | Ungültige Parameter, fehlerhafte Header, falsch formatierte Daten |
| 401 Unauthorized | Authentifizierung erforderlich | Geschützte Bereiche ohne gültige Anmeldedaten |
| 403 Forbidden | Zugriff verweigert | Fehlende Berechtigungen, IP-Sperre, .htaccess-Regeln |
| 404 Not Found | Ressource existiert nicht | Falsche URL, gelöschte Datei, fehlerhafte Verlinkung |
| 405 Method Not Allowed | HTTP-Methode nicht erlaubt | Server-Konfiguration, Provider-Einschränkungen, Sicherheitsregeln |
| 408 Request Timeout | Anfrage dauerte zu lange | Langsame Verbindung, Server-Überlastung, Timeout-Einstellungen |
| 500 Internal Server Error | Allgemeiner Serverfehler | Fehlerhafte Skripte, Konfigurationsprobleme, mehr Details im HTTP-Statuscode 500 Artikel |
| 502 Bad Gateway | Gateway-Fehler | Proxy-Probleme, Überlastung oder Wartungsarbeiten, siehe 502 Bad Gateway |
Diese Übersicht zeigt, dass 4xx-Fehler wie 405 grundsätzlich auf Probleme in der Client-Anfrage hinweisen, während 5xx-Fehler Serverprobleme signalisieren. Für dich als Website-Betreiber bedeutet das: Bei 4xx-Fehlern liegt die Lösung oft in der Konfiguration oder im Code, bei 5xx-Fehlern musst du häufiger den Hosting-Support kontaktieren.
Welche HTTP-Methoden es gibt und wann sie verwendet werden
Das Verständnis der verschiedenen HTTP-Methoden ist grundlegend, um nachzuvollziehen, warum bestimmte Anfragen auf deinem Server blockiert werden. Jede Methode hat einen spezifischen Zweck und unterschiedliche Sicherheitsimplikationen, was erklärt, warum Hosting-Provider und Webserver manche Methoden einschränken.
GET – Daten abrufen
GET ist die mit Abstand häufigste HTTP-Methode im Web. Sie dient ausschließlich dem Abrufen von Informationen: Webseiten, Bilder, Stylesheets, JavaScript-Dateien und andere Ressourcen. Wenn du eine URL in deinen Browser eingibst oder auf einen Link klickst, sendet der Browser eine GET-Anfrage.
Das Charakteristische an GET ist, dass die Methode keine Daten auf dem Server verändert. Sie ist idempotent, das heißt, du kannst sie beliebig oft wiederholen, ohne dass sich der Serverzustand ändert. Aus diesem Grund erlauben praktisch alle Webserver GET-Anfragen standardmäßig für alle öffentlichen Ressourcen.
POST – Daten an den Server senden
POST sendet Daten an den Server und wird typischerweise für Formulare, Datei-Uploads und API-Anfragen verwendet. Im Gegensatz zu GET verändert POST häufig Daten auf dem Server: Ein Kontaktformular speichert eine Nachricht, ein Login-Formular erstellt eine Session, ein Kommentar wird in die Datenbank geschrieben.
Viele Hosting-Provider blockieren POST-Anfragen auf statische HTML-Dateien aus Sicherheitsgründen, erlauben sie aber für PHP-Dateien oder andere serverseitige Skripte. Diese Einschränkung soll verhindern, dass Angreifer beliebige Daten an statische Seiten senden und damit Sicherheitslücken ausnutzen. Shared-Hosting-Pakete haben oft strengere POST-Einschränkungen als VPS oder Dedicated Server, wo du mehr Kontrolle über die Konfiguration hast.
PUT und DELETE – Ressourcen ändern und löschen
PUT ersetzt eine Ressource vollständig durch neue Daten, DELETE entfernt sie vom Server. Diese Methoden werden hauptsächlich in REST-APIs verwendet und sind im klassischen Webhosting eher selten. Ein typisches Beispiel: Eine API erlaubt PUT auf /api/users/123, um die Daten von Benutzer 123 zu aktualisieren und DELETE auf dieselbe URL, um den Benutzer zu löschen.
Aus Sicherheitsgründen blockieren die meisten Hosting-Provider PUT und DELETE standardmäßig. Diese Methoden erlauben direktes Schreiben und Löschen von Ressourcen, was erhebliche Risiken birgt, wenn die Authentifizierung nicht korrekt implementiert ist. Wenn du diese Methoden für deine Anwendung benötigst, musst du sie explizit in der Server-Konfiguration freischalten und durch entsprechende Sicherheitsmaßnahmen absichern.
HEAD, OPTIONS und PATCH
HEAD funktioniert wie GET, liefert aber nur die HTTP-Header zurück, ohne den eigentlichen Inhalt. Diese Methode ist nützlich, um Metadaten wie Dateigröße oder Änderungsdatum zu prüfen, ohne die gesamte Ressource herunterzuladen.
OPTIONS fragt beim Server ab, welche HTTP-Methoden für eine Ressource erlaubt sind. Diese Methode spielt eine wichtige Rolle bei CORS (Cross-Origin Resource Sharing): Bevor ein Browser eine Cross-Origin-Anfrage mit POST oder PUT sendet, schickt er einen Preflight-Request mit OPTIONS, um zu prüfen, ob die eigentliche Anfrage erlaubt ist. Wenn deine Website JavaScript-APIs von anderen Domains nutzt, muss der Server OPTIONS-Anfragen korrekt beantworten.
PATCH führt teilweise Updates an einer Ressource durch, im Gegensatz zu PUT, das die gesamte Ressource ersetzt. PATCH wird vor allem in modernen REST-APIs verwendet, wenn nur einzelne Felder aktualisiert werden sollen, ohne die komplette Ressource neu zu übertragen.
Die häufigsten Ursachen für den 405-Fehler in deinem Hosting
Der 405-Fehler kann an verschiedenen Stellen im Hosting-Stack entstehen. Von Provider-Einschränkungen über Webserver-Konfiguration bis zu Anwendungslogik gibt es mehrere Ebenen, auf denen HTTP-Methoden blockiert werden können. Die richtige Diagnose beginnt damit zu verstehen, wo genau die Blockierung stattfindet.
Hosting-Provider blockiert die HTTP-Methode
Viele Shared-Hosting-Anbieter setzen aus Sicherheitsgründen Einschränkungen für bestimmte HTTP-Methoden. Eine häufige Konfiguration: POST-Anfragen auf Dateien mit der Endung .html werden blockiert, während dieselbe Methode für .php-Dateien erlaubt ist. Der Grund liegt im Schutz vor Injection-Angriffen und Missbrauch statischer Ressourcen.
Ein Beispiel: Du hast ein Kontaktformular in kontakt.html eingebunden. Beim Absenden sendet der Browser eine POST-Anfrage an diese Datei, erhält aber einen 405-Fehler. Wenn du die Datei in kontakt.php umbenennst, funktioniert das Formular plötzlich, weil der Provider POST für PHP-Dateien zulässt. Diese Art von Einschränkung ist typisch für günstige Shared-Hosting-Pakete und lässt sich oft nur durch Kontakt mit dem Support oder einen Tarifwechsel lösen.
Fehlkonfiguration des Webservers
Apache, Nginx und IIS haben jeweils eigene Mechanismen zur Steuerung erlaubter HTTP-Methoden. Bei Apache kann das Modul mod_allowmethods mit der Direktive AllowMethods GET POST OPTIONS in der Konfiguration bestimmte Methoden explizit erlauben und alle anderen blockieren. Wenn diese Direktive zu restriktiv gesetzt ist, führt das zu 405-Fehlern.
Die .htaccess-Datei ist eine häufige Fehlerquelle. Rewrite-Regeln oder Limit-Direktiven können unbeabsichtigt Methoden blockieren. Bei Nginx werden Methoden oft über location-Blöcke mit der Direktive limit_except gesteuert. Ein Beispiel: Ein location-Block erlaubt nur GET und HEAD, blockiert aber POST. Bei VPS oder Dedicated Servern hast du vollen Zugriff auf die vHost-Konfiguration und kannst solche Einstellungen selbst anpassen.
CMS oder Framework blockiert die Methode
WordPress, Joomla, Laravel und andere Systeme haben eigene Routing- und Sicherheitsregeln, die unabhängig vom Webserver greifen. WordPress-Plugins können HTTP-Methoden blockieren, REST-API-Einstellungen können bestimmte Endpoints nur für bestimmte Methoden freigeben und Framework-Routing erlaubt oft nur explizit definierte Methoden für bestimmte Routen.
Ein typisches WordPress-Problem sind fehlerhafte Permalink-Einstellungen. Wenn die Permalink-Struktur nicht korrekt in die .htaccess-Datei geschrieben wird, können POST-Anfragen an bestimmte URLs fehlschlagen. Auch Plugin-Konflikte sind häufig: Ein Sicherheits-Plugin blockiert POST-Anfragen mit bestimmten Parametern oder ein Caching-Plugin interferiert mit der Methoden-Verarbeitung.
Firewall oder Security-Plugin greift ein
Web Application Firewalls (WAF), Sicherheits-Plugins wie Wordfence oder Sucuri und Provider-seitige Firewalls analysieren eingehende Anfragen und blockieren verdächtige Muster. POST-Requests mit bestimmten Parametern, die auf SQL-Injection oder Cross-Site-Scripting hindeuten könnten, werden oft präventiv abgelehnt.
Ungewöhnliche Methoden wie PUT oder DELETE lösen bei vielen Sicherheitssystemen automatisch Alarme aus, da sie im normalen Website-Betrieb selten vorkommen. Wenn du solche Methoden für eine API benötigst, musst du die Firewall-Regeln entsprechend anpassen. Die Firewall-Logs geben oft Aufschluss darüber, ob eine Anfrage aus Sicherheitsgründen blockiert wurde.
Falsche Dateiberechtigungen auf dem Server
Unzureichende Berechtigungen auf Dateisystem-Ebene können dazu führen, dass der Webserver bestimmte Operationen nicht ausführen kann. Wenn eine PHP-Datei POST-Daten verarbeiten und in eine Datei schreiben soll, der Webserver aber keine Schreibrechte für das Zielverzeichnis hat, kann dies zu einem 405-Fehler führen.
Die korrekten CHMOD-Einstellungen sind wichtig: Dateien sollten typischerweise die Berechtigung 644 haben (Besitzer kann lesen und schreiben, Gruppe und andere nur lesen), Verzeichnisse 755 (Besitzer kann alles, Gruppe und andere können lesen und ausführen). Zu restriktive Berechtigungen verhindern, dass der Webserver auf Dateien zugreift oder sie verändert, was sich als 405-Fehler manifestieren kann.
So erkennst du den 405-Fehler auf deiner Website
Der 405-Fehler zeigt sich an verschiedenen Stellen und in unterschiedlichen Formen. Je nachdem, wo du suchst, erhältst du unterschiedlich detaillierte Informationen über die Ursache. Die richtige Diagnose beginnt damit zu wissen, wo du hinschauen musst.
Fehlermeldung im Browser
Für deine Website-Besucher erscheint der Fehler als Fehlerseite im Browser. Die genaue Darstellung hängt vom Webserver und dessen Konfiguration ab. Typische Meldungen sind „405 Method Not Allowed“, „The method is not allowed for the requested URL“ oder „Failed to load resource: the server responded with a status of 405“.
Manche Server zeigen eine Standard-Fehlerseite mit minimalen Informationen, andere liefern detailliertere Meldungen. Wenn du eine Custom Error Page konfiguriert hast, wird diese angezeigt. Die Browser-Fehlermeldung ist für Endnutzer sichtbar und signalisiert, dass eine Funktion nicht verfügbar ist, etwa ein Formular, das nicht abgesendet werden kann.
Browser Developer Tools und Netzwerk-Tab
Die Developer Tools deines Browsers bieten deutlich mehr Details. Öffne sie mit F12 und wechsle zum Netzwerk-Tab. Hier siehst du alle HTTP-Anfragen, die deine Seite sendet. Filtere nach der betroffenen URL und klicke auf den Request. Der Status zeigt „405 Method Not Allowed“ und in den Response-Headers findest du den Allow-Header mit den erlaubten Methoden.
Diese Information ist wertvoll für die Diagnose: Wenn der Allow-Header „GET, OPTIONS“ anzeigt, weißt du sofort, dass POST nicht erlaubt ist. Du siehst auch die exakte Request-URL, die verwendete Methode und alle gesendeten Header und Parameter. Diese Details helfen dir zu verstehen, ob das Problem in der Anfrage selbst liegt oder in der Server-Konfiguration.
Server-Logs analysieren
Die Server-Logs liefern die umfassendsten Informationen. Je nach Hosting-Paket findest du sie in cPanel, Plesk oder im Dashboard deines Providers. Die Access-Logs zeigen alle eingehenden Anfragen mit Zeitstempel, IP-Adresse, angefragter URL, verwendeter HTTP-Methode und zurückgegebenem Statuscode.
Eine typische Logzeile könnte so aussehen: „192.168.1.100 – – [15/Jan/2025:14:23:45 +0100] „POST /kontakt.html HTTP/1.1″ 405 1234“. Diese Zeile zeigt, dass eine POST-Anfrage an /kontakt.html mit Status 405 abgelehnt wurde. Die Error-Logs können zusätzliche Details zur Ursache liefern, etwa Hinweise auf blockierte Module oder Konfigurationsprobleme.
Bei Shared Hosting ist der Zugang zu Logs oft eingeschränkt. Du siehst möglicherweise nur die letzten Stunden oder Tage und hast keinen Zugriff auf detaillierte Error-Logs. Bei VPS oder Dedicated Servern hast du vollständigen Zugriff auf alle Logdateien und kannst sie mit Tools wie grep oder Log-Analyzern durchsuchen.
Schritt für Schritt den 405-Fehler beheben
Die Fehlerbehebung folgt einer logischen Hierarchie von einfachen zu komplexen Lösungen. Beginne mit den schnellen Checks und arbeite dich zu den technischen Anpassungen vor. Diese systematische Vorgehensweise spart Zeit und verhindert, dass du unnötig an der Server-Konfiguration arbeitest, wenn das Problem viel simpler ist.
URL und HTTP-Methode überprüfen
Prüfe zuerst, ob die URL korrekt ist und ob die verwendete Methode für diese Ressource sinnvoll ist. Öffne die Browser Developer Tools und schaue im Netzwerk-Tab, welche Methode tatsächlich gesendet wird. Manchmal sendet ein Formular versehentlich GET statt POST oder ein JavaScript-Code verwendet die falsche Methode.
Achte auch auf Tippfehler in der URL. Wenn die URL nicht exakt stimmt, könnte der Server eine andere Ressource ansprechen als beabsichtigt und diese hat möglicherweise andere Methoden-Einschränkungen. Dieser Check dauert nur wenige Minuten und kann viel Zeit sparen.
Browser-Cache und Cookies leeren
Manchmal ist die Fehlerseite im Browser-Cache gespeichert und du siehst weiterhin den 405-Fehler, obwohl das Problem bereits behoben ist. Leere den Cache in Chrome über Einstellungen → Datenschutz und Sicherheit → Browserdaten löschen, in Firefox über Einstellungen → Datenschutz & Sicherheit → Daten entfernen.
Teste die betroffene URL auch im Inkognito-Modus oder Private-Browsing-Fenster. Diese Modi verwenden keinen Cache und keine gespeicherten Cookies, sodass du siehst, ob das Problem weiterhin besteht. Wenn die Seite im Inkognito-Modus funktioniert, lag das Problem tatsächlich im Cache.
WordPress-spezifische Lösungen
Wenn du WordPress verwendest, gibt es mehrere spezifische Schritte, die oft helfen. Gehe zu Einstellungen → Permalinks im WordPress-Dashboard und klicke auf „Änderungen speichern“, ohne etwas zu ändern. Dieser Vorgang schreibt die .htaccess-Datei neu und behebt häufig Routing-Probleme, die zu 405-Fehlern führen.
Deaktiviere alle Plugins und teste, ob der Fehler verschwindet. Wenn ja, aktiviere die Plugins einzeln wieder, um das problematische Plugin zu identifizieren. Sicherheits- und Cache-Plugins sind häufige Verursacher. Wechsle testweise zu einem Standard-Theme wie Twenty Twenty-Five, um auszuschließen, dass dein Theme die Ursache ist.
Prüfe die .htaccess-Datei im WordPress-Root-Verzeichnis. Wenn du unsicher bist, benenne sie in .htaccess.backup um und lass WordPress eine neue erstellen, indem du die Permalinks neu speicherst. Vergleiche dann beide Versionen, um zu sehen, welche Regeln den Fehler verursacht haben.
htaccess-Datei und Apache-Konfiguration anpassen
Wenn du Zugriff auf die .htaccess-Datei hast, prüfe sie auf Rewrite-Regeln oder Limit-Direktiven, die Methoden blockieren könnten. Suche nach Zeilen wie „Limit GET POST“ oder ähnlichen Einschränkungen. Erstelle vor jeder Änderung ein Backup der Datei.
Um bestimmte Methoden explizit zu erlauben, kannst du folgende Direktive verwenden: „AllowMethods GET POST OPTIONS“. Diese Zeile erlaubt nur die genannten Methoden und blockiert alle anderen. Achte darauf, dass das mod_allowmethods-Modul auf deinem Server aktiviert ist. Bei Shared Hosting hast du oft nur Zugriff auf .htaccess, bei VPS oder Dedicated Servern kannst du auch die Apache-Hauptkonfiguration anpassen.
Nginx-Konfiguration prüfen
Wenn dein Server Nginx verwendet, musst du die location-Blöcke in der Konfigurationsdatei prüfen. Suche nach Direktiven wie „limit_except GET HEAD“, die alle Methoden außer den genannten blockieren. Um POST zu erlauben, erweitere die Zeile zu „limit_except GET HEAD POST“.
Nach jeder Änderung an der Nginx-Konfiguration musst du den Server neu laden: „sudo nginx -s reload“ oder „sudo systemctl reload nginx“. Teste die Konfiguration vor dem Neuladen mit „sudo nginx -t“, um Syntaxfehler zu vermeiden. Diese Schritte erfordern Root-Zugriff und sind bei Shared Hosting nicht möglich.
Firewall-Regeln und Security-Plugins überprüfen
Prüfe die WAF-Regeln in deinem Hosting-Panel, falls verfügbar. Viele Provider bieten eine Web Application Firewall mit konfigurierbaren Regeln. Schaue nach Regeln, die bestimmte HTTP-Methoden oder Request-Parameter blockieren. Deaktiviere testweise einzelne Regeln, um die Ursache einzugrenzen.
Wenn du Cloudflare oder einen anderen Proxy-Dienst verwendest, prüfe auch dort die Firewall-Einstellungen. Diese Dienste können Anfragen blockieren, bevor sie deinen Server erreichen. Deaktiviere Security-Plugins in WordPress temporär und teste, ob der Fehler verschwindet. Schaue in den Firewall-Logs nach Hinweisen, warum die Anfrage blockiert wurde.
MIME-Type und Dateiendung anpassen
Wenn dein Provider POST auf .html-Dateien blockiert, aber für .php-Dateien erlaubt, kannst du einen Workaround nutzen: Ändere die Dateiendung von formular.html zu formular.php. Dieser Trick funktioniert, weil viele Provider ihre Sicherheitsregeln basierend auf MIME-Types und Dateiendungen anwenden.
Achte darauf, dass dein Hosting-Paket PHP unterstützt. Die meisten modernen Pakete tun dies standardmäßig. Wenn du saubere URLs ohne .php-Endung möchtest, kannst du eine .htaccess-Regel hinzufügen: „RewriteRule ^formular$ formular.php [L]“. Diese Regel leitet Anfragen an /formular intern zu formular.php weiter, ohne dass die Endung in der URL sichtbar ist.
Hosting-Support kontaktieren
Wenn keine der bisherigen Lösungen hilft, ist es Zeit, den Support deines Hosting-Providers zu kontaktieren. Das gilt besonders bei Provider-seitigen Einschränkungen, die du selbst nicht ändern kannst. Bereite folgende Informationen vor: die betroffene URL, die verwendete HTTP-Methode, den genauen Zeitpunkt des Fehlers und relevante Log-Einträge.
Erkläre dem Support, was du bereits versucht hast. Das spart Zeit und zeigt, dass du dich mit dem Problem beschäftigt hast. Frage konkret, ob der Provider bestimmte Methoden für deinen Tarif einschränkt und ob diese Einschränkungen aufgehoben werden können. Bei Shared Hosting ist der Support oft die einzige Lösung für bestimmte Probleme, da du keinen Root-Zugriff hast.
Wie der 405-Fehler deine Website und SEO beeinflusst
Die Auswirkungen eines 405-Fehlers gehen über die rein technische Ebene hinaus. Er betrifft die Nutzererfahrung, deine Conversion-Rate und potenziell auch dein Suchmaschinen-Ranking. Die geschäftlichen Konsequenzen hängen davon ab, welche Funktionen betroffen sind und wie schnell du reagierst.
Auswirkungen auf die Nutzererfahrung
Besucher, die auf einen 405-Fehler stoßen, sehen statt der erwarteten Funktion eine Fehlerseite. Ein Kontaktformular lässt sich nicht absenden, ein Login schlägt fehl, ein Kommentar kann nicht gepostet werden. Diese Frustration führt häufig zum Absprung, der Nutzer verlässt deine Website und sucht nach Alternativen.
Besonders kritisch ist der Fehler bei E-Commerce-Websites im Checkout-Prozess oder bei Lead-Generierungs-Seiten mit Kontaktformularen. Wenn ein Kunde seinen Kauf nicht abschließen kann oder ein Interessent keine Anfrage senden kann, verlierst du direkt Umsatz oder Leads. Die Conversion-Rate sinkt messbar, solange der Fehler besteht.
SEO-Relevanz von 4xx-Fehlern
Google und andere Suchmaschinen bewerten die User Experience als Ranking-Faktor. Häufige Fehler signalisieren eine schlecht gewartete Website, was sich negativ auf die Rankings auswirken kann. Allerdings ist die Auswirkung eines 405-Fehlers differenziert zu betrachten: Er ist problematischer auf wichtigen Seiten als auf unwichtigen.
Ein 405-Fehler auf deiner Hauptseite oder wichtigen Landing Pages schadet mehr als ein Fehler auf einer selten besuchten Unterseite. Im Vergleich zu 5xx-Serverfehlern ist ein 405 weniger kritisch, da er ein Client-Problem signalisiert und nicht auf grundlegende Server-Instabilität hindeutet. Dennoch solltest du den Fehler schnell beheben und regelmäßig die Google Search Console prüfen, um solche Probleme frühzeitig zu erkennen.
Business-Impact bei kritischen Funktionen
Die finanziellen Auswirkungen lassen sich konkret beziffern. Angenommen, deine Website hat 1000 Besucher pro Tag und eine Conversion-Rate von 5 Prozent. Wenn ein defektes Formular oder ein fehlerhafter Checkout-Prozess durch einen 405-Fehler blockiert ist, verlierst du 50 Conversions pro Tag. Bei einem durchschnittlichen Wert von 50 Euro pro Conversion summiert sich der Schaden auf 2500 Euro täglich.
Diese Rechnung verdeutlicht die Wichtigkeit von schnellem Monitoring und sofortiger Reaktion. Tools wie Uptime-Monitoring und Error-Tracking helfen dir, solche Probleme zu erkennen, bevor sie erheblichen Schaden anrichten. Je kritischer die betroffene Funktion für dein Geschäftsmodell ist, desto höher ist die Priorität der Fehlerbehebung.
So verhinderst du 405-Fehler in deinem Hosting
Präventive Maßnahmen sind effektiver als Fehlerbehebung. Durch saubere Konfiguration, regelmäßiges Monitoring und durchdachte Entwicklungsprozesse kannst du die meisten 405-Fehler von vornherein vermeiden. Die folgenden Best Practices helfen dir, eine stabile und fehlerfreie Website zu betreiben.
Dokumentiere deine Server-Konfiguration sauber und versioniere sie. Verwende ein Versionskontrollsystem wie Git für deine .htaccess-Datei und andere Konfigurationsdateien. So kannst du jederzeit nachvollziehen, welche Änderungen wann vorgenommen wurden und bei Problemen zu einer funktionierenden Version zurückkehren.
Erstelle vor Updates von CMS, Plugins oder Server-Software immer Backups und teste Änderungen auf einer Staging-Umgebung. Viele 405-Fehler entstehen durch Updates, die unbeabsichtigt Konfigurationen ändern oder neue Sicherheitsregeln einführen. Eine Staging-Umgebung ermöglicht es dir, solche Probleme zu erkennen, bevor sie die Live-Website betreffen.
Prüfe regelmäßig deine Server-Logs auf 405-Einträge. Selbst wenn Besucher den Fehler nicht melden, siehst du in den Logs, ob und wo Probleme auftreten. Automatisierte Log-Analyse-Tools können dich benachrichtigen, wenn bestimmte Fehler gehäuft auftreten. Diese proaktive Überwachung hilft dir, Probleme zu beheben, bevor sie sich auf viele Nutzer auswirken.
Setze Monitoring-Tools ein. Dienste wie UptimeRobot, Pingdom oder StatusCake überwachen deine Website kontinuierlich und benachrichtigen dich bei Ausfällen oder Fehlern. Konfiguriere sie so, dass sie auch kritische Funktionen wie Formulare oder API-Endpoints testen und nicht nur die Erreichbarkeit der Startseite prüfen.
Konfiguriere Security-Plugins und Firewalls so, dass sie legitime Anfragen nicht blockieren. Teste nach jeder Änderung an Sicherheitsregeln alle wichtigen Funktionen deiner Website. Zu restriktive Sicherheitseinstellungen schützen zwar vor Angriffen, können aber auch normale Nutzer aussperren. Finde die richtige Balance zwischen Sicherheit und Funktionalität.
Wenn du APIs entwickelst, folge REST-Best-Practices. Definiere klar, welche HTTP-Methoden für welche Endpoints erlaubt sind und dokumentiere dies. Implementiere sauberes Error-Handling, das bei nicht erlaubten Methoden einen 405-Status mit korrektem Allow-Header zurückgibt. Gute API-Dokumentation hilft Entwicklern, die richtigen Methoden zu verwenden und Fehler zu vermeiden.
Wähle ein Hosting-Paket, das deine Anforderungen erfüllt. Wenn du spezielle HTTP-Methoden für APIs benötigst oder volle Kontrolle über die Server-Konfiguration brauchst, ist ein VPS oder Dedicated Server die bessere Wahl als Shared Hosting. Shared-Hosting-Pakete haben oft Einschränkungen, die sich nicht aufheben lassen, während du bei einem VPS alle Freiheiten hast.
Schule dein Entwickler-Team über die korrekte Verwendung von HTTP-Methoden. Viele 405-Fehler entstehen durch falsche Methodenwahl im Code. Entwickler sollten verstehen, wann GET, POST, PUT und andere Methoden angemessen sind und welche Sicherheitsimplikationen sie haben. Code-Reviews und automatisierte Tests helfen, solche Fehler frühzeitig zu erkennen.
Spezialfälle und erweiterte Szenarien
Über die Standard-Webhosting-Szenarien hinaus gibt es komplexere Umgebungen, in denen 405-Fehler auftreten können. Diese Spezialfälle erfordern tieferes technisches Verständnis und sind vor allem für Entwickler und fortgeschrittene Nutzer relevant.
405-Fehler bei REST-APIs und Microservices
In der API-Entwicklung ist der 405-Fehler besonders häufig, da Endpoints typischerweise nur bestimmte Methoden unterstützen. Ein Beispiel: Die Route /api/users erlaubt GET zum Abrufen der Benutzerliste und POST zum Erstellen eines neuen Benutzers. Wenn ein Client versucht, DELETE auf diese Route anzuwenden, gibt die API einen 405-Status zurück.
Sauberes API-Design bedeutet, für jeden Endpoint klar zu definieren, welche Methoden erlaubt sind. Die API-Dokumentation sollte dies explizit aufführen. Die OPTIONS-Methode spielt hier eine wichtige Rolle: Clients können sie nutzen, um herauszufinden, welche Methoden ein Endpoint unterstützt, bevor sie die eigentliche Anfrage senden. Der Server sollte auf OPTIONS mit einem Allow-Header antworten, der alle erlaubten Methoden auflistet.
CORS und Preflight-Requests
Bei Cross-Origin-Anfragen sendet der Browser automatisch einen Preflight-Request mit der OPTIONS-Methode, bevor er die eigentliche Anfrage (z.B. POST oder PUT) ausführt. Dieser Preflight prüft, ob der Server die Cross-Origin-Anfrage erlaubt. Wenn der Server OPTIONS nicht unterstützt oder falsch konfiguriert ist, erhält der Browser einen 405-Fehler und die eigentliche Anfrage wird gar nicht erst gesendet.
Die Lösung besteht darin, OPTIONS-Anfragen auf allen API-Endpoints zu erlauben und die korrekten CORS-Header zu setzen: Access-Control-Allow-Origin, Access-Control-Allow-Methods und Access-Control-Allow-Headers. Ohne diese Konfiguration funktionieren JavaScript-APIs, die von anderen Domains aufgerufen werden, nicht. Dieses Problem tritt typischerweise auf, wenn Frontend und Backend auf verschiedenen Domains laufen.
Reverse Proxies und CDN-Konfiguration
In komplexen Setups mit Nginx als Reverse Proxy vor Apache, Cloudflare oder anderen CDNs kann der 405-Fehler auf Proxy-Ebene entstehen, obwohl der Origin-Server die Methode erlauben würde. Der Proxy filtert die Anfrage, bevor sie den eigentlichen Webserver erreicht.
Die Fehlersuche wird schwieriger, weil du mehrere Ebenen prüfen musst. Teste direkt gegen den Origin-Server (unter Umgehung des Proxys), um festzustellen, wo die Blockierung stattfindet. Prüfe die Proxy-Konfiguration und die CDN-Einstellungen. Bei Managed Hosting mit vorgeschaltetem Reverse Proxy musst du möglicherweise den Provider kontaktieren, da du keinen direkten Zugriff auf die Proxy-Konfiguration hast.
Windows IIS-spezifische Besonderheiten
Microsoft IIS hat eigene Mechanismen zur Methoden-Konfiguration. Die Einstellungen erfolgen über die web.config-Datei oder den IIS Manager. IIS unterscheidet sich in der Syntax und den verfügbaren Optionen deutlich von Apache und Nginx. Wenn du Windows-Hosting nutzt, musst du dich mit den IIS-spezifischen Konfigurationsmöglichkeiten vertraut machen.
Die Microsoft-Dokumentation bietet detaillierte Anleitungen zur Konfiguration von HTTP-Methoden in IIS. Typische Einstellungen finden sich unter Request Filtering und Handler Mappings. Bei Problemen mit 405-Fehlern auf IIS-Servern solltest du diese Bereiche zuerst prüfen.
Die wichtigsten Tools zur Diagnose von 405-Fehlern
Die richtigen Werkzeuge machen die Fehlersuche deutlich effizienter. Von Browser-Tools über Kommandozeilen-Utilities bis zu Monitoring-Diensten gibt es für jedes technische Level passende Hilfsmittel. Diese Tools helfen dir, das Problem schnell zu identifizieren und die richtige Lösung zu finden.
Browser Developer Tools wie Chrome DevTools und Firefox Developer Tools sind dein erster Anlaufpunkt. Der Netzwerk-Tab zeigt alle HTTP-Anfragen mit Status, Methode, Headers und Response-Daten. Du siehst sofort, welche Anfragen mit 405 fehlschlagen und welche Methoden erlaubt wären. Diese Tools sind in jedem modernen Browser integriert und erfordern keine Installation.
cURL ist ein Kommandozeilen-Tool zum Testen von HTTP-Requests mit verschiedenen Methoden. Mit „curl -X POST https://example.com/api/users“ sendest du eine POST-Anfrage und siehst die vollständige Server-Antwort inklusive Status und Headers. cURL ist besonders nützlich für API-Tests und automatisierte Checks. Es läuft auf allen Betriebssystemen und bietet volle Kontrolle über alle Aspekte der HTTP-Anfrage.
Postman und Insomnia sind GUI-Tools für API-Testing. Sie bieten eine übersichtliche Oberfläche, um verschiedene HTTP-Methoden zu testen, Header zu setzen und Request-Bodies zu definieren. Diese Tools sind ideal, wenn du nicht mit der Kommandozeile arbeiten möchtest. Sie speichern deine Anfragen und ermöglichen es dir, komplexe API-Tests zu organisieren und zu wiederholen.
Online HTTP-Status-Checker wie httpstatus.io erlauben schnelle Tests ohne Installation. Du gibst eine URL ein und das Tool zeigt den HTTP-Status und die wichtigsten Header. Diese Dienste sind praktisch für schnelle Checks von extern, um zu sehen, ob ein Problem nur lokal auftritt oder für alle Nutzer besteht.
Server-Log-Analyzer wie GoAccess oder AWStats helfen dir, große Mengen an Logdaten auszuwerten. Sie erstellen übersichtliche Reports mit Statistiken über Statuscodes, häufigste Fehler, betroffene URLs und zeitliche Verteilungen. Diese Tools sind besonders nützlich, wenn du systematisch nach Mustern in 405-Fehlern suchst.
Monitoring-Dienste wie UptimeRobot, Pingdom und StatusCake überwachen deine Website kontinuierlich und benachrichtigen dich bei Ausfällen oder Fehlern. Du kannst sie so konfigurieren, dass sie nicht nur die Erreichbarkeit prüfen, sondern auch spezifische Funktionen wie Formulare oder API-Endpoints testen. Diese proaktive Überwachung hilft dir, Probleme zu erkennen, bevor Nutzer sie melden.
Hosting-Panel-Tools wie der Error Log Viewer in cPanel oder der Log Browser in Plesk bieten direkten Zugang zu Server-Logs über eine grafische Oberfläche. Du musst nicht per FTP auf den Server zugreifen oder Kommandozeilen-Tools verwenden. Diese integrierten Tools sind besonders praktisch für Nutzer von Shared Hosting, die keinen SSH-Zugang haben.
Fazit: 405-Fehler verstehen und dauerhaft vermeiden
Der HTTP-Statuscode 405 Method Not Allowed entsteht, wenn eine HTTP-Methode für eine Ressource nicht erlaubt ist. Die Ursachen reichen von Provider-Einschränkungen über Webserver-Konfigurationen bis zu Sicherheitsmaßnahmen und CMS-Einstellungen. Die Fehlerbehebung beginnt mit einfachen Checks wie URL-Prüfung und Cache-Leerung und führt bei Bedarf zu technischen Anpassungen an .htaccess, Nginx-Konfiguration oder Framework-Routing.
Für dich als Website-Betreiber ist wichtig zu verstehen, dass dieser Fehler direkte Auswirkungen auf die Nutzererfahrung hat und Conversions kosten kann. Präventive Maßnahmen wie regelmäßiges Monitoring, saubere Konfiguration und systematisches Testen sind deutlich effektiver als reaktive Fehlerbehebung. Die Wahl des richtigen Hosting-Pakets spielt eine entscheidende Rolle: Shared Hosting hat oft mehr Einschränkungen bei HTTP-Methoden als VPS oder Dedicated Server. Wenn du volle Kontrolle über die Server-Konfiguration benötigst, etwa für APIs oder spezielle Webanwendungen, solltest du ein Paket mit Root-Zugriff in Betracht ziehen. Bei wiederkehrenden 405-Fehlern trotz korrekter Konfiguration lohnt sich der Wechsel zu einem Provider mit flexibleren Einstellungen und kompetentem technischen Support.
Brauchst du Hilfe bei der Wahl des richtigen Hostinganbieters?
- 100 % kostenlos und unverbindlich
- Persönliche Empfehlung
- Antwort innerhalb von 24 Stunden
Häufig gestellte Fragen
Was bedeutet der HTTP-Fehler 405 Method Not Allowed genau?
Der 405-Fehler signalisiert, dass der Server die verwendete HTTP-Methode (wie GET, POST, PUT oder DELETE) zwar grundsätzlich kennt, sie aber für die angeforderte Ressource nicht erlaubt. Die Ressource existiert und ist erreichbar, aber die gewählte Methode ist für sie nicht freigeschaltet. Der Server muss in seiner Antwort einen Allow-Header senden, der alle erlaubten Methoden auflistet. Diese Information hilft dir zu verstehen, welche Methoden du stattdessen verwenden kannst.
Warum tritt der 405-Fehler nur bei bestimmten Formularen oder Seiten auf meiner Website auf?
Verschiedene Ressourcen auf deinem Server können unterschiedliche Methoden-Einschränkungen haben. Ein typisches Beispiel: Dein Hosting-Provider erlaubt POST-Anfragen für PHP-Dateien, blockiert sie aber für HTML-Dateien aus Sicherheitsgründen. Auch die Webserver-Konfiguration kann für verschiedene Verzeichnisse oder URL-Muster unterschiedliche Regeln definieren. CMS-Systeme wie WordPress haben eigene Routing-Regeln, die bestimmte Methoden nur für bestimmte Endpoints zulassen. Sicherheits-Plugins können basierend auf URL-Mustern oder Request-Parametern unterschiedlich reagieren.
Kann ich den 405-Fehler selbst beheben oder brauche ich meinen Hosting-Provider?
Das hängt von der Ursache und deinem Hosting-Paket ab. Viele 405-Fehler kannst du selbst beheben: WordPress-Permalink-Probleme, fehlerhafte .htaccess-Regeln, Plugin-Konflikte oder Cache-Probleme lassen sich ohne Provider-Hilfe lösen. Bei VPS oder Dedicated Servern hast du vollen Zugriff auf die Server-Konfiguration und kannst alle Einstellungen selbst anpassen. Bei Shared Hosting sind deine Möglichkeiten eingeschränkter. Wenn der Provider bestimmte Methoden auf Infrastruktur-Ebene blockiert, musst du den Support kontaktieren und fragen, ob die Einschränkung aufgehoben werden kann.
Wie unterscheidet sich der 405-Fehler von einem 404- oder 403-Fehler?
Diese drei Fehler haben völlig unterschiedliche Bedeutungen. Ein 404-Status bedeutet, dass die angeforderte Ressource nicht existiert. Die URL führt ins Leere. Bei 405 existiert die Ressource, aber die verwendete HTTP-Methode ist nicht erlaubt. Ein 403-Status signalisiert fehlende Zugriffsrechte aufgrund von Authentifizierungs- oder Autorisierungsproblemen. Während 404 ein Problem mit der URL ist und 403 ein Berechtigungsproblem, ist 405 ein Problem mit der gewählten HTTP-Methode. Die richtige Einordnung hilft dir, die passende Lösungsstrategie zu wählen.
Schadet ein 405-Fehler meinem Google-Ranking und meiner SEO?
Suchmaschinen bewerten die User Experience als Ranking-Faktor. Häufige Fehler können sich negativ auf deine Rankings auswirken, da sie auf eine schlecht gewartete Website hindeuten. Die Auswirkung hängt aber vom Kontext ab: Ein 405-Fehler auf wichtigen Seiten oder häufig genutzten Funktionen ist problematischer als auf selten besuchten Unterseiten. Im Vergleich zu 5xx-Serverfehlern ist ein 405 weniger kritisch, da er ein Client-Problem signalisiert und nicht auf grundlegende Server-Instabilität hindeutet. Behebe den Fehler schnell und überwache deine Website regelmäßig mit der Google Search Console, um solche Probleme frühzeitig zu erkennen.
Welche HTTP-Methoden sollte mein Webhosting mindestens unterstützen?
Für eine Standard-Website sind GET und POST die wichtigsten Methoden. GET wird für das Abrufen von Seiten und Ressourcen benötigt, POST für Formulare und Datenübermittlung. OPTIONS ist wichtig für CORS-Preflight-Requests, wenn du JavaScript-APIs von anderen Domains nutzt. HEAD wird seltener benötigt, ist aber nützlich für Metadaten-Abfragen. PUT, DELETE und PATCH sind hauptsächlich für REST-APIs relevant und werden im klassischen Webhosting selten gebraucht. Wenn du APIs entwickelst oder moderne Web-Anwendungen betreibst, solltest du ein Hosting-Paket wählen, das alle gängigen Methoden unterstützt und dir die Kontrolle über die Konfiguration gibt.
geschrieben von:
Jason Carter
Mein Name ist Jason Carter und ich konzentriere mich auf den technischen Bereich von Webhosting Vorteil. Mit über 10 Jahren Erfahrung in der IT-Branche bringe ich umfangreiche Kenntnisse und Expertise im Bereich Webhosting mit. Ich teste verschiedene Hosting-Anbieter, schreibe detaillierte Bewertungen und Vergleiche und arbeite kontinuierlich daran, die Website zu verbessern, damit Besucher die bestmögliche Erfahrung erhalten.
Auch interessant
Wir helfen dir, den besten Webhoster zu finden
Kostenlose beratung






