Forcieren eines Downloads mit filesMatch in htaccess im WWW root

7

Ich versuche, den Download aller Dateien eines Ordners zu erzwingen.

Der Link auf der Seite sieht so aus

%Vor%

Und ich habe dieses Snippet in meinem .htaccess

%Vor%

Ich weiß bereits, dass die 2 Zeilen innerhalb des Tags funktionieren, weil es funktioniert, wenn ich eine .htaccess-Datei direkt in den Ordner lege, in den ich den Download mit dem folgenden Code erzwingen möchte:

%Vor%

Es scheint etwas zu geben, was ich nicht über das filesMatch-Tag verstehe.

    
nebulousGirl 17.01.2013, 22:06
quelle

3 Antworten

13

Sehen Sie sich die Dokumentation für FilesMatch und Dateien . Es heißt eindeutig

  

Die Anweisungen in diesem Abschnitt werden auf jedes Objekt angewendet   mit einem Basisnamen (letzte Komponente des Dateinamens), der mit dem angegebenen übereinstimmt   Dateiname.

Das bedeutet, dass es in Ihrem Beispiel mit file.pdf übereinstimmt. Ihr zweites Beispiel *.* entspricht file.pdf , Ihr erstes Beispiel .*uploads/documents.* jedoch nicht. Es kann eigentlich nie übereinstimmen, da es einen Schrägstrich enthält, der als Verzeichnistrennzeichen verwendet wird.

Wenn Sie die Apache-Konfiguration

bearbeiten können

Sie sollten entweder <Files *.*> oder <Files *.pdf> (je nachdem, was Sie den Download erzwingen möchten) in eine Location -Direktive einschließen:

%Vor%

Wenn Sie die Apache-Konfiguration nicht bearbeiten können

Leider ist die Location-Anweisung in .htaccess-Dateien nicht erlaubt. Erstellen Sie einfach eine .htaccess in Ihrem /uploads/documents/ -Verzeichnis.

    
Perleone 17.01.2013, 22:17
quelle
10

Suche nach weiteren Informationen fand diesen Code:

%Vor%

Arbeitete für mich.

    
user2634424 30.07.2013 13:59
quelle
1

Dieser Code ist perfekt, wenn Sie - nicht im Dateinamen verwenden!

Ändern Sie beispielsweise für name-1.mp3 in name1.mp3

%Vor%

Löschen Sie Ihren Browser und überprüfen Sie ihn.

    
Alireza.A 12.06.2016 18:47
quelle

Tags und Links