如何在drupal文件上传中验证pdf文件的mime类型。
问题:任何人都可以通过重命名或添加文件扩展名来上传脚本文件(例如:script.php.pdf)
我已经为图片上传实现了mime类型检查(因为它是一个单独的模块),但无法确定在哪里验证mime类型的pdf文件。
图像MIME类型检查代码:
$supported_mime = array('image/jpg', 'image/jpeg', 'image/png', 'image/gif');
$elements[$delta]['#upload_validators']['file_validate_mime_type'][0] = implode('::', $supported_mime);
答案 0 :(得分:0)
其他验证的代码应该放在你的hook_file_validate()函数中:
https://api.drupal.org/api/drupal/modules%21system%21system.api.php/function/hook_file_validate/7.x
但是,重命名文件(隐藏真正的扩展名)似乎不太可能做到这一点并愚弄Drupal。我的意思是即使php上传了php文件,扩展名为.pdf也不会被执行。