답변:
파일은 다음을 리턴하는 file_directory_temp () 에서 이름이 리턴되는 디렉토리에 작성됩니다 .
Drupal 변수 "file_temporary_path"의 값은 admin / config / media / file-system (Drupal 7) 또는 admin / settings / file-system (Drupal 6)의 설정 페이지에서 설정됩니다.
Drupal 변수가 설정되어 있지 않으면 함수는 다음 디렉토리 중 하나를 검사합니다. 해당 디렉토리 중 하나가 존재하면 리턴되어 사용됩니다.
ini_get('upload_tmp_dir')
sys_get_temp_dir()
입니다."file_temporary_path"변수가 설정되지 않고 이전 지점에 나열된 디렉토리가 존재하지 않거나 쓸 수없는 경우, 함수는 Drupal 변수 "file_public_path"의 값을 사용합니다. 기본적으로 해당 디렉토리는 conf_path() . '/files'
Drupal 사이트에 사용 된 setting.php 파일을 포함하는 디렉토리에 포함 된 "files"디렉토리 값 을가집니다.
이 함수는 "file_temporary_path"변수를 찾은 디렉토리로 설정했습니다.
내가 아는 한, 모든 모듈은 "temporary : //"(Drupal 7 이상에서만 사용 가능)로 시작하는 경로를 사용하거나 임시 파일을 엽니 다 file_directory_temp()
. 에서 반환 된 디렉토리는 file_directory_temp()
시스템에서 시스템으로 변경할 수 있지만 모듈은 항상 해당 디렉토리를 사용합니다.
Drupal 모듈은 모듈을 포함하는 디렉토리를 작성할 수있는 권한이 없습니다. 모듈이 해당 디렉토리를 사용하여 임시 파일을 작성하는 것은 매우 어렵습니다. 모듈이 포함 된 디렉토리 (또는 해당 디렉토리의 하위 디렉토리)를 사용하는 모듈을 찾으면 버그로보고합니다.
file_directory_temp()
Drupal 6에 정의 된 대로 두 가지 모두에 적용되며, 기능 코드는 Drupal 6에서 Drupal 7로 전달되지 않습니다.
admin / settings / file-system의 설정 페이지에는 임시 파일에 사용되는 디렉토리에 대한 설정이 포함되어 있습니다.
일부 모듈은 임시 파일을 위해 다른 디렉토리를 선택할 수 있습니다. 표준 폴더 위치가 없습니다.
예를 들어, ctools 모듈은 / sites / default / files / ctools 디렉토리에 임시 캐시 파일을 작성합니다. 다를 수 있습니다.