Ho un sistema caricato file nel mio progetto php.
Che cosa faccio al caricamento:
1) Controlla l'estensione del file e il tipo di file mime.
2) Se i tipi di estensione e mime sono consentiti, salvo il file fuori dalla directory public_html, quindi offro l'opportunità agli utenti, quindi scarica il file:
if (file_exists($file_path)) {
header('Content-Description: File Transfer');
header('Content-Type: some mime type');
header('Content-Disposition: attachment; filename=somefilename');
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file_path));
readfile($file_path);
}
Domanda: questa procedura per caricare file è sicura o no? In caso contrario, cosa può fare di più, per migliorare la sicurezza del caricamento del file?
Grazie.