Contact Form 7 empfängt gelegentlich fehlerhafte hochgeladene Bilder (1-Byte-Dateien) – wie debuggen?Php

PHP-Programmierer chatten hier
Anonymous
 Contact Form 7 empfängt gelegentlich fehlerhafte hochgeladene Bilder (1-Byte-Dateien) – wie debuggen?

Post by Anonymous »

Ich habe ein seltsames und zeitweilig auftretendes Problem mit dem Hochladen von Kontaktformular 7-Dateien.
Hin und wieder erreichen mich Einsendungen aus einem CF7-Kontaktformular per E-Mail mit defekten Bilddateien im Anhang.

Die hochgeladene Datei ist angehängt, aber ihre Größe beträgt genau 1 Byte, sodass sie völlig unbrauchbar ist.
Was dies schwierig macht, ist Folgendes:
  • Es passiert nicht immer
  • Es scheint meistens (oder nur) bei Bildern mit dem

    Code: Select all

    .jpeg
    -Erweiterung[/b]
  • Ich habe das gleiche Problem nicht bemerkt (oder es ist äußerst selten) mit .jpg, .png oder .pdf
Upload-Feldkonfiguration (CF7)
Das Datei-Upload-Feld ist wie folgt konfiguriert dies:

Code: Select all

[file artwork-photo filetypes:jpg|jpeg|png|pdf|heic|webp limit:20mb class:form-control]
Server-/PHP-Konfiguration
Der Server läuft mit PHP 8.3.28 (FPM) und hat die folgenden relevanten Einstellungen: (Diese werden auf Hosting-Ebene festgelegt und in .htaccess nicht überschrieben.)

Umgebung
  • Contact Form 7-Version: 6.1.4
  • WordPress-Version: 6.9
Was ich verstehen möchte
  • Wie kann ich das richtig debuggen?
    • Gibt es eine Möglichkeit, den Upload-Vorgang zu protokollieren CF7?
    • Kann ich überprüfen, ob die Datei bereits auf PHP-Upload-Ebene beschädigt ist (

      Code: Select all

      $_FILES
      )?
  • Könnte dies speziell mit .jpeg-Dateien zusammenhängen?
    • Nichtübereinstimmung des MIME-Typs?
    • Probleme bei der clientseitigen Codierung?
    • EXIF / progressiv JPEGs?
  • Gibt es bekannte CF7- oder PHP-FPM-Randfälle, die zu einer hochgeladenen 1-Byte-Datei führen könnten?
  • Empfohlene Hooks oder Filter in Contact Form 7, um die Datei vor abzufangen und zu validieren, bevor sie verarbeitet wird, oder per E-Mail gesendet?
Wenn jemand etwas Ähnliches erlebt hat oder Vorschläge dazu hat, wo protokolliert werden soll / was überprüft werden soll (PHP, CF7-Hooks, Serverprotokolle usw.), würde ich mich sehr über eine Anleitung freuen.
Vielen Dank im Voraus!

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post