Forcer le téléchargement en HTTP (Méthode CGI)

Comment forcer le téléchargement de fichiers

Cet article va vous expliquer comment forcer le téléchargement de fichiers quels que soient leurs types. (testé sur Apache 2)

Lorsque l'on souhaite proposer les fichiers dans un dossier d'un serveur Web, il n'est pas rare que ce soit le navigateur qui l'ouvre directement (Fichiers images, pdf, etc.), alors que l'on souhaite que le navigateur propose le téléchargement du fichier. Il y a plusieurs méthodes pour forcer le téléchargement de fichiers.

La méthode CGI ou PHP

Une des premières facons , est de créer un script CGI (quelque soit le language à condition que votre hébergeur le supporte) qui écrit les entêtes HTTP adéquats pour forcer le téléchargement d'un fichier par le navigateur. On utilise habituellement l'entête HTTP suivant :

Content-Type: application/x-download

Plusieurs Entêtes doivent être précisés pour mener à bien l'opération :

Content-Type:application/x-download
Content-Length:<Taille en octets du fichier>
Content-Disposition:attachment;filename=<nom du fichier>

Les avantages de la méthode

  • Permet d'avoir une racine virtuelle pour le stockage des fichiers : un répértoire accessible uniquement par un utilisateur particulier, un répertoire caché de l'arboresence du serveur, ou encore un repertoire stocké sur un autre serveur (par nfs, ftp ou autre)
  • Permet d'utiliser n'importe quel langage de programmation : Perl, PHP, Python, C, etc.

Les inconvénients de la méthode

  • Utilise beaucoup des ressources système , notamment lorsqu'un langage de script est utilisé (cela peut aller jusqu'a 10 % du CPU, et une quantité de mémoire de la taille du fichier.
  • Méthode qui peut se révéler être une faille de sécurité, si l'on décide d'organiser les fichiers à télécharger en dossiers

Au vu des inconvénients que cela représente, nous alons voir dans la page suivante comment forcer le téléchargement directement depuis apache.

2 Pages dans cet article
Le contenu de cette page a été vu 1514 fois / Contenu mis a jour le Lundi 10 Juillet 2006 à 20:07
Les dernières pages que vous avez visitées sur ce site sont :

Citation 38 sur 50

Le plus dur pour les hommes politiques, c'est d'avoir la mémoire qu'il faut pour se souvenir de ce qu'il ne faut pas dire

Coluche

0 Index
0 Unix/Linux
0 OpenBsd
0 Internet
0 Le Webmaster

Les meilleures randonnées pedestres de bretagne.