Apache2: Download von PHP-Files als Text zulassen

Um php-Files innerhalb eines bestimmten Pfades statt der Ausführung sondern die Auslieferung als Download zu ermöglichen (z.B. für den WordPress-Downloadordner) muss man nur in das oberste Verzeichnis, welches dieses Verhalten zeigen soll, eine .htaccess-Datei mit folgendem Inhalt anlegen:

?View Code APACHE
# filename .htaccess (with dot!)
 
<FilesMatch "\.php$">
ForceType text/plain
</FilesMatch>

Der Download sollte ohne Neustart oder Reload des Apache-Webservers sofort funktionieren. Man kann es in diesem Fall auch nur als Viewer verwenden (allerdings ohne Syntax-Highlighting), denn der Browser zeigt die Datei direkt an.

Wer den Download erzwingen und die Anzeige im Browser vermeiden will, wählt statt des oben verwendeten Typs lieber:

?View Code APACHE
ForceType application/octetstream

Da es sich in dem Beispiel um einen regulären Ausdruck handelt, kann man es natürlich noch für vielfältig andere Formate und MIME-Typen verwenden.

6 Gedanken zu „Apache2: Download von PHP-Files als Text zulassen“

  1. Der Vollständigkeit halber:

    Damit die o.g. htaccess auch verarbeitet wird, muss in der Domainbeschreibung (/etc/apache2/sites-enabled/*.conf) mindestens der Parameter “AllowOverride FileInfo” stehen.

    Alternativ kann man ForceType auch in einen “Location”-Tag in der Domainbeschreibung einbetten.

  2. Der Vollständigkeit halber:

    Damit die o.g. htaccess auch verarbeitet wird, muss in der Domainbeschreibung (/etc/apache2/sites-enabled/*.conf) mindestens der Parameter “AllowOverride FileInfo” stehen.

    Alternativ kann man ForceType auch in einen “Location”-Tag in der Domainbeschreibung einbetten.

  3. Ist ja schön und gut, aber der liebe IE ignoriert die ForceType-Anweisung. Wenn man zB bei einer .jpg den Download anbieten will, muss das so aussehen:

    ForceType application/force-download

    Header append Content-disposition “attachment; filename=name.jpg”

    lg, Oli
    Oliver Schoppe

  4. Ist ja schön und gut, aber der liebe IE ignoriert die ForceType-Anweisung. Wenn man zB bei einer .jpg den Download anbieten will, muss das so aussehen:

    ForceType application/force-download

    Header append Content-disposition “attachment; filename=name.jpg”

    lg, Oli
    Oliver Schoppe

Schreib einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *