2011-07-18 9 views
0

나는 많은 사람들이 큰 (2MB-3MB) 파일을 업로드하는 사이트를 가지고있다. 그래서 나는 그들을 외부 드라이브 (내 drobo)에 저장해야합니다. 어떻게하면 서버의 폴더에 파일을 업로드 할 수 있습니다 다음 어떻게 그들을 검색하고 사용자가 그들을 다운로드 할 수있는 PHP 스크립트를 작성할 수 있습니다.PHP로 파일을 옮기는 것 (파일 업로드 관련)

감사합니다, 조이 Sacchini

답변

1

단순히 접근 공간에 파일을 이동,이 작업을 수행합니다.

http://php.net/manual/en/function.move-uploaded-file.php

은하지만 이것의 의미를 생각해야합니다. 업로드 된 파일을 열린 디렉토리로 이동하면 누구나 누구나 액세스 할 수 있습니다. 이것은 매우 위험합니다. 누군가 PHP 스크립트를 업로드한다고 상상해보십시오.

웹 루트가 아닌 위치에서 파일을 가져 오는 스크립트를 만드는 것이 가장 좋습니다. 기본 레벨에서는 원래 이름 (디스크에서 무작위로 이름을 바꿔야 함)과 mimetype을 데이터베이스에 저장하는 등 파일의 속성을 저장할 수 있습니다. 그런 다음 readfile()으로 클라이언트에 파일을 보냅니다.

개인용 하드 드라이브에 백업을 다운로드하려면 SFTP 만 사용하십시오.

+0

에 inaccesible 될 것입니다 이런 식으로 뭔가를 사용합니다. 그렇지 않으면 파일이 임시 공간에 위치하므로 삭제됩니다. – Brad

+0

고마워, 이걸 시험해 보자. – macintosh264

0

잘 u는 업로드 된 파일을 서버 디렉토리 외부에 보관할 수 있습니다. 그래서 ur 서버 루트가/www/htdocs이면 파일을 유지할 수 있습니다/업로드. 그래서

move_uploaded_file($_FILES['file'],'/uploaded') 

처럼 UR 파일이 외부 세계 당신은 그것을 업로드 될 때를 이동해야