2010-07-09 3 views
0

CakePHP 파일 업로드 양식 도우미를 사용하여 서버에 파일을 업로드하려고합니다.
현재 개발 용 컴퓨터 (Mac OSX)에서 CakePHP 1.3을 실행 중입니다.
폼이 전송되면 컨트롤러에 전달 된 변수에 임시 이름 (/var/tmp/name)이 있고 파일 이름으로 해당 이름이 있습니다.
그러나 영구적 인 위치로 파일의 이름을 바꾸려고하면 파일이 손상되고 위치로 이동해도 파일이 존재하지 않습니다.CakePHP에서 신비하게 파일 업로드 실패

나는 이러한 오류 메시지를 얻을 : I 대상 디렉토리에 제대로 설정 권한이없는 경우

Warning (2): move_uploaded_file(Users/chustar/Documents/IMAG0001.jpg) [function.move-uploaded-file]: failed to open stream: No such file or directory [APP/controllers/users_controller.php, line 41] 
Warning (2): move_uploaded_file() [function.move-uploaded-file]: Unable to move '/private/var/tmp/php98lzsP' to '/Users/chustar/Documents/IMAG0001.jpg' [APP/controllers/users_controller.php, line 41] 
Warning (2): Cannot modify header information - headers already sent by (output started at /Library/WebServer/Documents/cake/libs/debugger.php:673) [CORE/cake/ 
+0

어떻게 실패합니까? 오류 메시지 란 무엇입니까? –

+0

다음과 같은 세 번째 오류를 해결하려고합니다. "경고 (2) : 헤더 정보를 수정할 수 없습니다 - 이미 보낸 헤더 (/Library/WebServer/Documents/cake/libs/debugger.php:673에서 시작된 출력) [CORE/cake/"당분간 무언가를 무력화시키는 것만 포함될 수 있습니다. 기본적으로 문제의 원인을 파악하기 위해 단순화하고 싶습니다. –

+1

세 번째 오류는 일반적으로 처음 두 오류의 결과입니다. 헤더가 수정되지 않도록 출력을 생성하는 오류 메시지가 표시됩니다. –

답변

2

나는이 오류를 많이 얻을. 설명을 위해 Apache 웹 서버를 실행 중이며 www이라는 사용자로 실행 중이라고 가정합니다. 그 www 사용자는 대상 디렉토리에 대한 쓰기 권한이 있어야합니다. 어떤 허가 당신이 가지고 있지만, 웹 서버 사용자가 가지고있는 권한에 관한 아니에요.

문제가 아닌 것으로 판명되면 몇 가지 자세한 내용 및/또는 일부 코드가 도움이 될 수 있습니다.

+0

sonme 이유로 내 문서 폴더에 쓰고있었습니다. 그래서 아파치 거기에 쓰기 권한이 없었어요. 해결 됐어. – chustar