Les mutus OVH permettent d’ajouter un gestionnaire d’extension de fichier. Tu peux faire en sorte que les fichiers .pdf soient interprétés comme du PHP.
Dans le dossier qui contient ton pdf, crée un .htaccess et ajoutes-y ce code :
AddHandler fastcgi-script .pdf
(Note : le handler fastcgi-script est probablement spécifique aux serveurs d’OVH)
Je te conseille de n’avoir pas d’autres fichiers pdf dans ce dossier, afin d’éviter les problèmes.
Ensuite, change l’extension de ton pdf, par exemple en rajoutant .raw ou .bin, à vrai dire l’extension importe peu
document.pdf.raw.
Enfin, crée un fichier document.pdf qui contiendra en réalité le code PHP qui sera chargé à la fois de comptabiliser l’accès au fichier, et d’en servir le contenu :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| <?php
// le header est important pour que le fichier soit géré correctement côté client
header('Content-Type: application/pdf');
// exemple bidon de requête à la base de données
$dsn = 'mysql:dbname=testdb;host=127.0.0.1';
$user = 'dbuser';
$password = 'dbpass';
$pdo = new PDO($dsn, $user, $password);
$pdo->exec('UPDATE file_access
SET access_count = access_count + 1
WHERE file_name = "document.pdf"
LIMIT 1');
// envoi du contenu au client
echo file_get_contents('document.pdf.raw'); |
Ayant mon propre hébergement mutu sur OVH, j’ai pu tester et confirmer que ça fonctionne.
Partager