Allora i file sono tutti all'interno del mio server/dominio, io devo proteggerli da utenti esterni/visitatori.
Non devono essere accessibili direttamente da browser/url, per poterli scaricare/vedere utilizzo sempre php che lavorando sugli header rigenero il file e funziona perfettamente.
codice:
if (file_exists($filePath)) { //path dov'è salvato il file nella cartella protetta
header('Content-Description: File Transfer');
header('Content-Type: '.$file['type']); // content type del file
header('Content-Disposition: attachment; filename='.basename($filePath));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($filePath));
ob_clean();
flush();
readfile($filePath);
exit;
}