NeuBlack Friday – 50 % Rabatt auf die erste Zahlung
WordPress-Fehlerbehebung

Leider ist dieser Dateityp aus Sicherheitsgründen nicht erlaubt

Der Upload wurde abgelehnt, bevor etwas geschrieben wurde. Entweder steht die Erweiterung nicht auf der erlaubten Liste oder der Inhalt der Datei stimmt nicht mit der Erweiterung überein.

Sorry, this file type is not permitted for security reasons.

Kurzantwort

WordPress überprüft den Inhalt gegen Erweiterung, so dass eine umbenannte Datei abgelehnt wird, auch wenn ihre Erweiterung erlaubt ist - und diese Überprüfung schützt Sie und behindert Sie nicht.

Diagnose

Die wahrscheinlichsten Ursachen zuerst.

Gehen Sie die Liste der Reihe nach durch. Prüfen Sie jede Ursache, bevor Sie etwas ändern, da die Lösungen unterschiedlich sind und eine Vermutung mehr Zeit kostet als ein Befehl.

UrsacheSo prüfen Sie esLösung
Die Erweiterung ist nicht in der erlaubten ListeGängige Formate werden in Ordnung hochgeladen, dieses nicht. SVG, WebP in älteren Versionen und Schriftartendateien sind die üblichen Beispiele.Fügen Sie den Typ über den Filter upload_mimes hinzu, wobei sowohl die Erweiterung als auch der MIME-Typ benannt werden. Fügen Sie nur die Formate hinzu, die Sie benötigen, anstatt die Liste breit zu öffnen.
Der Inhalt stimmt nicht mit der Erweiterung übereinDie Überprüfung der Datei meldet einen anderen Typ als ihren Namen - einen PNG, der als .jpg gespeichert ist, oder eine Tabellenkalkulation, die als .csv exportiert wird und eigentlich HTML ist.Konvertieren Sie die Datei richtig, anstatt sie umzubenennen. WordPress vergleicht den realen Typ mit der Erweiterung, um genau dies zu erfassen, und das Überschreiben des Schecks ist der falsche Hebel.
Multisite beschränkt Uploads netzwerkweitNetzwerkadministrator → Einstellungen listet zulässige Dateitypen auf, und die Erweiterung fehlt darin.Fügen Sie die Erweiterung zur Liste des Netzwerks hinzu. Sie wird zusätzlich zum Filter pro Site angewendet, so dass ein Filter alleine nicht daran vorbeikommt.
SVG wird absichtlich abgelehntNur SVG schlägt fehl, und die Datei ist gültig. Core erlaubt sie standardmäßig nicht.SVG ist XML, das Skript tragen kann, so dass ein nicht sanitärer Upload ein gespeicherter Cross-Site-Scripting-Vektor und kein Bild ist.
Anleitung

Schritt für Schritt zur Lösung.

Die Befehle setzen WP-CLI und Shell-Zugriff voraus. Jeder Schritt erklärt, was er tut, damit Sie ihn bei Bedarf im Dashboard oder per SFTP ausführen können.

  1. Finden Sie heraus, was die Datei wirklich ist

    Dies liest den Inhalt, nicht den Namen - das gleiche, was WordPress tut.

    file --mime-type -b broken-upload.jpg
  2. Sehen Sie, was WordPress derzeit erlaubt

    Die Liste ist filterbar, so dass sie vom dokumentierten Standard abweichen kann.

    wp eval 'print_r( get_allowed_mime_types() );' | head -n 30
  3. Erlauben Sie einen bestimmten zusätzlichen Typ

    Fügen Sie dies in einem kleinen Plugin anstelle des Themes hinzu, so dass es eine Theme-Änderung überlebt.

    add_filter( 'upload_mimes', function ( $mimes ) {
        $mimes['webp'] = 'image/webp';
        return $mimes;
    } );
  4. Konvertieren statt Umbenennen, wenn Typen nicht übereinstimmen

    Re-Encoding erzeugt eine Datei, deren Inhalt und Erweiterung übereinstimmen, was der Scheck verlangt.

    magick input.jpg output.png
  5. Wiederholen und bestätigen Sie, dass der Typ gespeichert wurde

    Ein erfolgreicher Upload zeichnet den MIME-Typ auf, den er erkannt hat; das Zurücklesen bestätigt die vorgenommene Korrektur.

    wp post list --post_type=attachment --fields=ID,post_mime_type --posts_per_page=5
Mit MagicWP

Darum kümmert sich die Plattform.

Die Medienbibliothek und der SFTP-Account sind separate Pfade zum selben Webroot, so dass ein Designer, der ein ungewöhnliches Format benötigt, es direkt platzieren kann, ohne dass die Liste der zulässigen Typen für jeden Editor auf der Website erweitert wird. Nichts auf der Plattform erfordert, dass die Inhalts-Verlängerungs-Prüfung deaktiviert wird, was die Verknüpfung ist, die die meisten "jeden Dateityp zulassen" -Schnipsel nehmen.

Häufige Fragen

Häufige Fragen.

Ist es sicher, SVG-Uploads zuzulassen?
SVG ist XML und kann ein Skript enthalten, das im Kontext Ihrer Domain ausgeführt wird, wenn die Datei direkt geöffnet wird, so dass ein nicht-sanitiertes SVG von einem nicht vertrauenswürdigen Mitwirkenden ein gespeichertes XSS ist, kein Bild.
Warum wird mein .csv abgelehnt, wenn CSV erlaubt ist?
Da es sich bei den Inhalten nicht um CSV handelt. Exporte aus Tabellenkalkulationstools sind oft HTML oder ein Excel-Format mit einem .csv-Namen, und die Fehlanpassung ist genau das, was der Scheck fängt. Re-Exportieren als echter kommagetrennter Text.
Sollte ich ALLOW_UNFILTERED_UPLOADS verwenden?
Nein. Es deaktiviert die Überprüfung für jeden Administrator und jeden Upload, was eine unbequeme Datei in einen stehenden Weg verwandelt, um ausführbare Inhalte im Webroot zu platzieren.
Die gleiche Datei wurde letztes Jahr in Ordnung hochgeladen. Was hat sich geändert?
Entweder wurde die erlaubte Liste verengt - ein Plugin, das den Typ hinzugefügt hat, wurde entfernt - oder die Datei wurde von einem Tool erneut gespeichert, das sein tatsächliches Format geändert hat, während der Name beibehalten wurde.