Проверка фалов на сервере при загрузке?

Вопрос 1.
Проверяю загруженные файлы на сервер вот так:
$finfo 	= finfo_open(FILEINFO_MIME_TYPE); 
$mime 	= finfo_file($finfo, $file);
finfo_close($finfo);

Достаточно ли этого, или нужно устанавливать на сервер антивирус?

Вопрос 2.
Нашёл миме типы файлов.
$mime_types = array(
            'txt' => 'text/plain',
            'htm' => 'text/html',
            'html' => 'text/html',
            'xml' => 'application/xml',
			
            // images
            'png' => 'image/png',
            'jpe' => 'image/jpeg',
            'jpeg' => 'image/jpeg',
            'jpg' => 'image/jpeg',
            'gif' => 'image/gif',
            'bmp' => 'image/bmp',

            // archives
            'zip' => 'application/zip',
            'rar' => 'application/x-rar-compressed',

            // audio/video
            'mp3' => 'audio/mpeg',

            // adobe
            'pdf' => 'application/pdf',
            'psd' => 'image/vnd.adobe.photoshop',
            'ai' => 'application/postscript',
            'eps' => 'application/postscript',
            'ps' => 'application/postscript',

            // ms office
            'doc' => 'application/msword',
            'docx'=> 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
            'rtf' => 'application/rtf',
            'xls' => 'application/vnd.ms-excel',
            'xlsx'=> 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
            'ppt' => 'application/vnd.ms-powerpoint',
            'pptx'=> 'application/vnd.openxmlformats-officedocument.presentationml.presentation',

            // open office
            'odt' => 'application/vnd.oasis.opendocument.text',
            'ods' => 'application/vnd.oasis.opendocument.spreadsheet'
        );

Но почему то finfo_file($finfo, $file); выдаёт другие миме типы для некоторых файлов, например у фалов txt. От чего это зависит?

Вопрос основной.
Как нужно проверять файлы загруженные на сервер пользователями?
  • Вопрос задан
  • 250 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы