it-swarm-ko.tech

임시 디렉토리 구성

최근에 사이트를 로컬 호스트에서 VPS로 옮겼습니다. 공개 및 개인 파일을 쓰기 가능하게 만들었습니다. 그러나 임시 폴더를 찾을 위치와 사용 권한을 변경하는 방법을 잘 모르겠습니다. 이 메시지가 계속 나타납니다.

대상 디렉토리가 올바르게 구성되지 않아서 지정된 파일 temporary : // file3Hl91E를 복사 할 수 없습니다. 파일 또는 디렉토리 권한에 문제가있을 수 있습니다. 자세한 정보는 시스템 로그에 있습니다.

Virtualmin, Drupal 7, 7, 데비안 서버를 사용하고 있습니다. 현재 임시 디렉토리는 /tmp.

49
Jasmine Ahmed

관리자-> 구성-> 매체-> 파일 시스템을 점검하여 tmp 경로를 개인화하십시오. 상대 경로를 사용하고 Apache 사용자에게 올바른 권한이 있는지 확인하십시오.

이 기사를 개인적으로 좋아합니다 수정 파일 업로드 . 그는 잘 관찰했다 그것은 나를 위해 일했다.

최근에 내 사이트를 Mac 컴퓨터로 다운로드했습니다. Mac에서 Apache에 mod_userdir를 사용하고 있었으며 /etc/Apache2/users/nameofuser.conf에서 AllowOverride All를 설정해야한다는 것을 잊었습니다. 그렇지 않으면 다음 메시지가 표시됩니다.

대상 디렉토리가 올바르게 구성되지 않아서 지정된 파일 임시를 복사 할 수 없습니다.

47
cayerdis

Settings.php에서

$conf['file_temporary_path'] = '/tmp';

이것은 유닉스 시스템에서 99 %의 시간 동안 작동합니다.

일반적으로/tmp 디렉토리는 열린 권한이있는 UNIX 시스템에 존재하며 특히 임시 파일을 위해 존재하며 종종 성능을 향상 시키도록 설정됩니다.

명령 행에서 ls -al /tmp를 실행하여 권한을 확인할 수 있습니다.

이에 대한 자세한 내용은 https://en.wikipedia.org/wiki/Temporary_folder 를 참조하십시오.

18
chim

지정된 임시 디렉토리 (admin/config/media/file-system에 정의 됨)와 임시 파일을 복사 할 폴더 모두에 권한 문제가있을 수 있음을 이해해야합니다. 나는이 오류를 몇 번 보았으며 일반적으로 임시 폴더에는 문제가 아니지만 해당 파일이 복사되는 최종 폴더 after 임시 폴더에 살고 있습니다.

또한 공용 파일 시스템 경로가 올바르게 설정되어 있는지 확인하십시오.

17
sheldonkreger

나는이 정확한 문제가 있었고 제안 된대로 내 tmp 폴더 위치에 상대 경로 (sites/default/files/tmp)를 사용했는지 확인하고 tmp 폴더에 대한 권한을 변경하여 Apache에서 쓸 수 있었지만 내 문제는 여전히 존재했습니다. . 그래서 로그 메시지 (보고서 >> 최근 로그 메시지)를 확인하여 문제가 무엇인지 더 잘 이해할 수 있는지 확인하기로 결정했습니다. 이렇게하면보다 구체적인 메시지가 나타납니다.

파일 권한을 public : // js에서 설정할 수 없습니다.

이것은 사이트/기본/파일의 js 폴더에 대한 권한을 확인하도록 요청했으며 Apache가 쓸 수 없으므로 해당 폴더의 권한을 775로 변경하여 오류 메시지를 제거했습니다. 따라서 아직 문제를 해결하지 않은 경우 tmp 폴더뿐만 아니라 sites/default/files의 모든 하위 폴더에 대한 권한을 확인하는 것이 좋습니다. 이 정보를 공유하겠다고 생각했습니다.

7
Andew

admin/config/media/file-system에서 파일 시스템 설정을 찾을 수 있습니다./tmp로 변경하십시오.

또한 설정 문제에 대해 관리자/보고서/상태를 확인할 수 있습니다

/ tmp 권한에 대해 755를 부여하면/public_html에서 찾을 수 있습니다.

5
Ahmed

오류 메시지는 somteimes을 오도 할 수 있습니다

문제가 대상 디렉토리와 관련이 있다고 가정하면 Apache에 Drupal 파일을 넣고 싶어하는 sites/default/files 하위 폴더에 쓸 수있는 권한이 없을 것입니다.

좋은 해결책은 Apache 사용자를 sites/default/files 아래의 모든 파일과 디렉토리의 소유자로 만드는 것입니다.

cd /path/to/sites/default
Sudo chown -R _www:_www files

또는 비슷한 것이 대상 디렉토리 문제를 해결해야합니다. 소유자가 모든 하위 디렉토리에 대한 쓰기 및 실행 권한을 가지고 있는지 다시 확인하십시오.

2
chim

파일 디렉토리 : Apache 기반 웹 서버 문제 해결

웹 서버가 디렉토리 파일을 "소유"하지 않으면 두 가지 방법으로 진행할 수 있습니다. 이 지침에서는 웹 서버에 대한 셸 액세스 권한이 있다고 가정합니다. 셸 액세스 권한이없는 경우 호스팅 공급자에게 추가 지원을 요청하십시오.

이상적으로 웹 서버 이름과 일치하도록 디렉토리 파일의 "소유자"를 변경할 수 있습니다. Unix 또는 Linux 기반 서버에서 다음 명령을 실행하여 웹 서버가 "누가"실행 중인지 확인할 수 있습니다.

$ ps aux  |grep Apache # for Apache 2.x
$ ps aux  |grep httpd # for Apache 1.x

웹 서버에 따라 이러한 명령 중 하나는 다음과 같은 일련의 행을 반환합니다.

www-data 13612  0.1  0.9  50640 20340 ? S 12:29   0:08 /usr/sbin/Apache2 -k start

반환 된 텍스트의 첫 번째 열은 웹 서버가 작동하는 "사용자"입니다. 이 경우 사용자는 www-data입니다. 웹 서버가 파일 디렉토리를 쓰기 가능하게하려면 다음 명령을 사용하여 소유권을 재지 정해야합니다.

$ chown -R www-data sites/default/files
$ chmod -R 0700 sites/default/files

서버에서 폴더 소유권을 변경할 수있는 충분한 권한이없는 경우 다음으로 가장 좋은 옵션은 다음 명령을 사용하여 폴더에 대한 그룹 쓰기 액세스를 제공하는 것입니다.

$ chmod -R 0770 sites/default/files

위에서 설명한 FTP 프로그램을 사용하여 디렉토리의 권한을 조정할 수도 있어야합니다.

이 단계를 완료하면 관리-> 보고서-> 상태 보고서로 이동하여 적절한 권한이 할당되었는지 확인하십시오. "파일 시스템"으로 표시된 섹션으로 스크롤하여 설정이 올바른지 확인하십시오.

출처 : 파일 디렉토리

2
Sukhjinder Singh

경우에 따라 기본/파일에서 'ctools'및 'js'폴더를 삭제하여 쉽게 해결할 수 있습니다. 필요한 경우 시스템에서이 폴더를 다시 만듭니다. 기존 사이트를 새로 설치할 때 기존 폴더가 이미 문제를 일으키는 경우가 있습니다. 또한 기존 사이트를 새로 설치 한 후 CSS가 작동하지 않는 경우 이러한 파일을 삭제하고 drupal 다시 만들도록하여) 해결할 수도 있습니다.

2
Paul Trotter

나는 기존 답변을 정말로 좋아하지 않으므로 시간이 지남에 따라 업데이트 될 것입니다. 주로 셸 명령이 있습니다.

지금은 sites/example.com :

MYSITE=example.com
FILES=sites/$MYSITE/files  
# CSS and JS might also cause trouble and advagg has its own dirs
TMPDIRS=$FILES/tmp $FILES/js $FILES/css $FILES/advagg_*
drush vset file_temporary_path $FILES/tmp # seems better than using /tmp
drush vset file_directory_temp $FILES/tmp
cd $(drush drupal-directory)   
chown www-data -R $TMPDIRS
chmod 755 -R $TMPDIRS
1
kqw

내 이전과 문제 구성

chmod 664 -R /var/drupal-bc/sites/default/files
chmod 664 -R /var/drupal-bc/sites/default/private

drw-rw-r-- 2 www-data www-data  4096 Jul 31 12:35 files
drw-rw-r-- 3 www-data www-data  4096 Jul  5 15:08 private

내 새롭고 작동 구성

chmod 774 -R /var/drupal-bc/sites/default/files
chmod 774 -R /var/drupal-bc/sites/default/private

drwxrwxr-- 2 www-data www-data  4096 Jul 31 12:35 files
drwxrwxr-- 3 www-data www-data  4096 Jul  5 15:08 private
1
Claudio Lente

또 다른 오류 원인은 파일 폴더에 쓸 수 없다는 것입니다. 내 경우에는 다음을 사용하여 해결했습니다.

$chmod 777 sites/default/files/pictures/
1
freeman

한 서버에서 다른 서버로 옮긴 후에도 동일한 문제가 발생했습니다.

폴더를 755 등으로 설정하여 여기에 제안 된 모든 것을 시도했습니다.

내 임시 폴더는 ""tmp7zXhVVCO "로 설정되었으며 모든 재시도 후에 임시 파일이 복사되는 것을 보았지만 설치가 계속 실패했습니다.

문제는 그러나 소유자가 권리가 아니며, 777이이 오류를 제거하는 이유입니다. 그러나 우리는 이것이 프로덕션 사이트로 갈 수있는 방법이 아니라는 것을 모두 알고 있습니다.

당신이해야 할 일은 임시 폴더를 "temp"또는 다른 것에 적합한 것으로 변경하는 것입니다 아직 존재하지 않음, drupal Apache rights, not ser 권한으로이 새 폴더를 만들고 문제는 해결되었습니다.

1
Kevin G

Pantheon을 사용하여이 문제를 겪고 (temp) 파일 디렉토리 경로를 설정 한 후에도 오류가 계속 발생하면 dev 인스턴스 대시 보드의 연결 모드를 Git에서 SFTP로 전환해야 할 수도 있습니다.

Drupal 사이트가 Git이 관리하는 디렉토리에 파일을 저장하려고 시도하는 중일 수 있습니다 (예 : Adaptive Themes 테마에서 레이아웃 설정 등을 변경하는 경우). SFTP : 파일이 저장되면 Git으로 다시 전환 할 수 있으며 대시 보드에 서버에서 변경 한 내용을 커밋하라는 메시지가 표시됩니다.

1
Kay V

나는 이주에 대해 같은 문제가 있었다. 모든 사이트/기본/파일에 chmod 777이 있지만 오류가 계속 발생합니다. 사이트/기본/파일에서 권한 775를 변경하면 메시지가 사라졌습니다. 나는 개인 경로 문제가 아니었다, 나의/var/tmp이지만 775 권한이다.

1
Wood

구성-> 미디어-> 파일 시스템에서/temp-catalogue를 제거했습니다. 그 후 나는 아무런 문제가 없었습니다.

1
Filip

나는 같은 문제가 있었다.

Windows에서 IIS을 (를) 사용했습니다. 마지막으로 문제는 sites/default/files 폴더 및 sites/default/files/tmp 폴더의 권한에 대한 것이 었습니다.

마지막으로 폴더에 "전체 권한"을 다시 부여하여 작동했습니다.

문안 인사

1
jorge_vicente

임시 폴더에 대한 올바른 권한은 웹 서버 구성에 따라 다릅니다.

Drupal with PHP 웹 서버의 모듈로 Apache와 같이 PHP $ ===를 실행하는 경우) 사용자 지시문을 사용하여 기본 웹 서버 구성 파일에 정의 된 사용자가 쓰기를 수행해야하는 경우 그것에 acccess.

% grep -i "사용자"/etc/httpd/conf/httpd.conf

사용자 아파치

1
Taras