wir lassen automatisch Anhäge in Form von PDFs an den Artikel importieren. Der Dateiname ändert sich nicht pro Import. Jedoch kommt es vor, dass der Inhalt des PDF sich ändert und der Dateiname auf jeden Fall gleich bleibt.
Nun haben wir das folgende Problem.
Durch das Ändern der URL, dadurch, dass die URL die MD5 Summe enthält, wird Google in die Irre geführt. Dies führt dazu, dass im Google Index veraltete URLs stehen und daher kein PDF zum Anzeigen mehr über die Google-Suche aufrufbar sind. Man wird somit bei Google abgestraft.
Der Import findet täglich statt, egal ob sich die PDF Dateien ändern oder nicht. Wenn der Inhalt der PDF Datei sich ändert (zum Beispiel neuere Revision) ändert sich der Dateiname nicht. Praktisches Beispiel: Inhaltsverzeichnis.pdf
Dadurch das die PDF aber mit der neuen Version in der Dateigröße ändert, ändert sich die MD5 Summe und somit die URL. Diese sollte sich aber nicht ändern.
Wir haben ein Linux Server (ManagedServer) also keine Limitierung in Sachen Anzahl Verzeichnisse und Dateien pro Verzeichnis, daher ist es bei uns nicht notwendig etliche Unterverzeichnisse anhand der MD5 Summe anzulegen.
Der MD5-Hash wird aber nur aus dem Dateinamen generiert, da hat die Größe gar keine Bedeutung für.
Bist Du Dir sicher, dass sich der Dateiname beim Upload nicht ändert? Wird die alte Datei nicht vorher gelöscht, wird sie auch nicht überschrieben, wenn eine neue Version hochgeladen wird. Da die Datei dann aber schon vorhanden ist, bekommt die neue noch eine Erweiterung. Und durch diese Erweiterung ändert sich dann natürlich auch der Hash.
Im Standard jedenfalls hat die Dateigröße keinen Einfluss auf den Hash und damit den Pfad.
Du kannst natürlich auch wieder auf die “alte” Version mit allen Dateien in einem Verzeichnis zurückgehen: MediaService
Mit Shopware 5 wurde ein kleiner Fix eingebaut, der das Handling mit Sonderzeichen in Dateinamen verbessert, Sonderzeichen werden nun aus dem Dateinamen entfernt und durch ein „-“ ersetzt. Ebenso wird die Datei bei bereits existentem Dateinamen umbenannt, die erneut hochgeladene Datei erhält einen MD5-Hash als Anhang zum Dateinamen. So werden Duplikate auf dem Server verhindert." < Zweiter Satz: Das wollen wir verhindern und bewusst mit den selben Dateinamen die alte Datei überschreiben.