загрузка файла в Drupal переименовывает в txt для js файлов - PullRequest
0 голосов
/ 08 октября 2011

Я использую 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 на основе своих профилей

1 Ответ

0 голосов
/ 07 декабря 2011

Поиск во многих местах, это должно было быть сделано с помощью метода переменной get, чтобы администратор мог решить, что загружать, а что не загружать.Единственный способ - взломать imce copy, переименовать функцию и вызвать новую, а в новой предоставить интерфейс администратора.

...