Спасибо всем.
роблема состоит в том, чтобы пользователи не загружали вредоносный файл на мой веб-сервер. Я работаю в среде Linux (Debian).
На самом деле загрузки обрабатываются через php с помощью этого кода:
function checkFile($nomeFile, $myExt = false){
if($myExt != false){ $goodExt = "_$myExt"."_"; }else{ $goodExt = "_.jpg_.bmp_.zip_.pdf_.gif_.doc_.xls_.csv_.docx_.rar_"; }
$punto = strrpos($nomeFile, '.');
$ext = "_".substr($nomeFile, $punto, 8)."_";
if(stristr($goodExt, $ext)){ return 1; }else{ return 0; }
}
здесь я могу указать расширения, разрешенные для загрузки, и если файл не соответствует им, я удаляю, как только загрузка будет завершена. Но этот способ позволяет пользователю свободно изменять расширение файла простым переименованием ... и это плохо для меня; даже если файл file.exe (например) никогда не будет выполнен, если он переименован в file.jpg (я прав?), я не хочу, чтобы на моем сервере были файлы с потенциальной опасностью.
Есть ли способ, в php, python или whatelse, может ли система unix легко работать, чтобы проверить истинный тип файла?
Я пробовал модуль mimetypes python, но он извлекает ipotetical mime-тип файла .. на основе расширения -.-