Comment éviter l’ouverture d’un PDF avec un navigateur web et comment forcer son téléchargement ?
- Comment éviter que mon formulaire PDF apparaisse comme inachevé et inactif dans Chrome/Firefox/Explorer/Safari ?
- Comment éviter que mon PDF multimédia apparaisse comme une page blanche dans Chrome/Firefox/Explorer/Safari ?
- Comment éviter que Chrome/Firefox/Explorer/Safari affiche tous les calques de mon PDF les uns sur les autres ?
La réponse est simple mais elle ne dépend pas du PDF lui-même, elle se trouve du coté du serveur sur lequel se trouve le PDF à télécharger.
En effet, dans le répertoire/dossier qui contient le (ou les) PDF on peut placer un fichier .htaccess, c’est un fichier texte facultatif qui contient des instructions à destination des navigateurs web et des moteurs de recherche.
Le plus souvent on trouve un fichier .htaccess à la racine du site web, mais pas forcément dans les sous-répertoires/sous-dossiers.
C’est dans ce fichier .htaccess qu’on va indiquer au navigateur web qu’il ne faut pas ouvrir directement les PDF mais qu’il faut les télécharger, ça tient en une seule ligne :
AddType application/octet-stream .pdf
Et comme un bonheur n’arrive jamais seul cela fonctionne aussi avec n’importe quel autre type de fichier, il suffit d’ajouter une deuxième ligne :
AddType application/octet-stream .pdf AddType application/octet-stream .fdf
Et ainsi de suite pour chaque format de fichier dont on voudra forcer le téléchargement, en particulier ceux qui s’ouvrent d’une façon déroutante dans les navigateurs web (.JS, .JSX, .TXT, .RTF, etc.).
C’est ainsi que ça fonctionne sur abracadabraPDF.net, tous les PDF de démos se téléchargent automatiquement grâce à un fichier .htaccess.
En résumé
Il suffit de copier la ligne ci-dessus et de la coller dans un nouveau document texte créé avec NotePad, TextEdit ou n’importe quel éditeur de texte.
Ce qui est important c’est son nom : .htaccess
Sachant que le point en début de nom est indispensable et qu’il ne faut surtout pas de suffixe.
Comme ce sont des systèmes Unix, sur Mac OS et sur Linux les fichiers dont le nom commence par un point sont par défaut des fichiers invisibles.
Sous peine de le voir disparaître immédiatement il faudra donc soit “Afficher les fichiers invisibles”, soit renommer le fichier après l’avoir placé sur le serveur. Personnellement je préfère utiliser cette dernière méthode.
Une restriction cependant : il paraît (je n’ai pas vérifié) que cela ne fonctionne que sur les serveurs Apache, mais comme c’est le type de serveur le plus répandu actuellement…
Bons téléchargements !