Fehler beim Herunterladen von Dateien

Falls ein Download von Binärdateien nicht mehr funktioniert und eine Servermeldung im Browser ausgibt, kann dies an veränderter Serverumgbung liegen.

Bei größeren Dateien (um die 5 MB Dateigröße) kann zum Apache-Webserver die HTTP Range verwendet werden, um die Anfrage vom Browser an den Webserver teilweise (partiell) vorzunehmen.

Je nach Serverumgebung ist dies nicht möglich, was z.B. beim Umstieg eines Domainfactory Webservers von den bisherigen 32-Bit-Tarifen auf die 64-Bit-Tarife der Fall ist. Das hat allerdings weniger mit dem 64-Bit-System zu tun, als mit dem Einsatz des zwischengeschalteten nginx-Servers als Proxy.

Beim Versuch, eine Binär-Datei (z.B. PDF oder Office-Datei) herunterzuladen, wird dies vom Browser mit z.B. folgender Fehlermeldung quittiert (links Mozilla Firefox, rechts Google Chrome als Browser).

Browser Fehlermeldungen beim Download

Fehler: Gesicherte Verbindung fehlgeschlagen

Beim Verbinden mit Ihre-Domain.tld trat ein Fehler auf.

Die Website kann nicht angezeigt werden, da die Authentizität der erhaltenen Daten nicht verifiziert werden konnte.
Kontaktieren Sie bitte den Inhaber der Website, um ihn über dieses Problem zu informieren.

Weitere Informationen…

Die Website ist nicht erreichbar

Die Webseite unter https://Ihre-Domain.tld/default-wAssets/docs/broschuere.pdf ist eventuell vorübergehend nicht verfügbar oder wurde dauerhaft an eine neue Webadresse verschoben.

ERR_HTTP2_PROTOCOL_ERROR

Auch beim Herunterladen größerer Backup-Dateien (zip oder tgz) kann es zu einer Fehlermeldung kommen und ein Download ist somit nicht möglich. Auch dann hilft meist die u.g. Lösung, wobei die Regel dann in einer .htaccess Datei direkt in der DOCUMENT_ROOT der Domain (bei Bedarf auch weiter oben) zu definieren ist. Das gilt ebenso beim Aufruf von Dateien, welche über die accessDocument.php, also ein Skript im Global-Projekt, aufgerufen werden. Legen Sie dann die Definition entweder in der .htaccess des Global-Projektes oder eben auf oberster Ebene in der .htaccess Datei fest.

Definition in der .htaccess Datei

Das Problem lässt sich lösen, indem in die .htaccess Datei des betreffenden Verzeichnisses (z.B. /default-wAssets) folgende Zeilen eingetragen werden, um zum RequestHeader die Range abzuschalten. Die BASE hat dies mittlerweile im Standard so in der .htaccess Datei definiert.

Auszug aus der Datei /default-wAssets/.htaccess

<IfModule mod_headers.c>
  # Anwenden von Header-Anweisungen auf alle Dateien
  Header set Accept-Ranges none
  RequestHeader unset Range
  # mp4 Dateien anders handhaben, damit diese im Browser problemlos abgespielt werden können
  <FilesMatch "\.mp4$">
    Header set Accept-Ranges bytes
  </FilesMatch>
</IfModule>