Drupal中的file save upload将js文件重命名为txt



我使用IMCE文件上传css和js的变化,但每当我上传js它被重命名为。txt文件。我查了一下代码,在imce中上传提交它使用drupal API file_save_upload,

// Rename potentially executable files, to help prevent exploits.
if (preg_match('/.(php|pl|py|cgi|asp|js)$/i', $file->filename) && (substr($file->filename, -4) != '.txt')) {
  $file->filemime = 'text/plain';
  $file->filepath .= '.txt';
  $file->filename .= '.txt';
}

它在includes/file.inc中定义,它没有提供一个选项来超越它,以及使用管理设置允许的扩展。我真的不想为标准改变这一点,但剩下的其他选择是用另一个名字定义相同的函数,允许扩展在imce的某个地方,有没有其他更好的方法来做到这一点?PS:我不想使用FTP,因为我希望用户使用基于这些配置文件的imce

搜索了很多地方,这应该由一个变量get方法来完成,以便管理员可以决定上传什么和不上传什么。唯一的方法是破解imce复制函数重命名并调用这个新函数,并在新函数中提供管理界面。

最新更新