sub_title
 PHP
제   목 [설치/설정] 대용량 업로드...
작성자 컴퓨터존 등록일 2008-05-02 15:19:09 조회수 7,070

[설치/설정] 대용량 업로드...

오래된 얘기지만 특별히 완벽하다 싶은 글이 없는거 같아 올려 봅니다.
파일 업로드건 post데이타건 대용량 업로더시 문제가 되는 부분은 php.ini의 설정과 연관이 있습니다.

참, 아래 내용은 윈도우 & php v4.3.x를 기준으로 합니다.

먼저 ini 설정 관련해서는 다음의 내용을 확인해야 합니다.

post_max_size = nM
- 파일 업로드 시도 데이타가 post로 전송되기 때문에 당연학겠죠.^^

upload_max_filesize = nM
- post_max_size보다 작거나 같게 설정하면 됩니다.
- post_max_size보다 크게 주는건 의미가 없습니다.

위의 두 설정 값은 2048미만으로만 적용 가능합니다.
물론, 이렇게 큰값으로 줄 경우가 있겠냐 만은...ㅋㅋ

혹시라고 2047 보다 큰 값으로 주게 되면 php 엔진 자체가 오류를 발생 시킵니다.
post데이타 자체를 인식을 못해버리더군요...(이에 대한 제약에 대한 자료는 아직 찾지 못했습니다 - 테스트 결과 확인)

이 외의 설정은 실제로 필요치 않습니다.
단, 실행 시간과 관련해 max_execution_time을 거론하시는 분들이 있으신데, 그렇진 않은거 같고 실제 대용량 업로더와 관련 있는 설정은 max_input_time입니다.
max_execution_time
- 스크립트 페이지(.php)의 프로그램 실행 시간
max_input_time
- 스크립트 페이지로 제어가 넘어 오기 전에 php 엔진이 데이타를 업로더 받는 시간

위와 같이 두개의 설정값이 따로 있는거 같구요, 통상 업로더 용량이 커지면 스크립트 실행 시간도 많이 지긴 하겠지만 2기가 업로더 받은 파일을 특정 영역으로 복사하는데 30초 씩이나 걸리진 않겠죠...(맞을까...?)

그렇다고 업로더 용량이 크다고 해서 실제 ini설정에서 조정해 주는건 적절하지 못한건 같구요, 업로더 페이지에서 set_time_limit(0)로 설정하고 돌리는게 더 안전하리라 봅니다.

set_time_limit는 실행시간과 데이타 업로더 시간에 동시에 작용하는 것으로 코드상에 넣을 수 있기 때문에 안전하게 상용할수 있다고 봅니다.

또한, ini 설정에 memory_limit를 거론하기도 하는데 이것은 업로드 용량 제한과는 상관이 없습니다.
단지, 업로드 되는 용량를 버퍼링 하는 것으로 시스템 퍼포먼스에만 영향이 있는거 같습니다.(시스템에 메모리가 많다면 올려주는게 좋게지만 그냥 두어도 상관이 거의 없습니다.)

결과적으로 ini설정은
post_max_size
upload_max_filesize
두가지만 하시면 된답니다.
그리고 필요에 따라서 set_time_limit를 설정하시구요.^^

다들 아시겠지만 정리해 봤습니다.

아파치 서버에서의 제약이 추가적으로 더 있는거 같은데 그쪽은 잘 몰라서...
(누가 정리해 주시면 감사하겠습니다.^^)

출처: http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=44081 글쓴이: 쪼아~

 
0
    
 
0
        list
 
※ 짧은 댓글일수록 예의를 갖추어 작성해 주시기 바랍니다.
line
reply cancel
 
번호 제목 글쓴이 추천 조회 날짜
30  PHP 함수 간단 정리   member 웹스톤 0 / 0 8307 2008-08-14
29  PHP 메일(mail) 함수를 이용한 첨부화일 전송하기 첨부파일   admin 웹마당넷 3 / 1 28211 2008-08-02
28  PHP 파일 업로드 보안   member 사라마음 0 / 0 8358 2008-08-02
27  PHP - 파일첨부가 가능한 폼메일러 LeoFormMailer 첨부파일   member 웹스톤 0 / 0 9410 2008-08-01
26  PHP - RSS 리더기   member 파도 0 / 1 8150 2008-07-29
25  PHP 숫자 천자리마다 콤마(쉼표) 찍기   member 높이뜬새 2 / 2 20084 2008-07-29
24  PHP 문자열 연결하기   member 높이뜬새 0 / 0 9404 2008-07-25
23  무조건 알아야 할 PHP 속도 테스트 14 가지   member 웹스톤 1 / 0 20633 2008-06-16
22  PHP 문자열중 숫자만 추출하기   member 높이뜬새 0 / 0 10291 2008-05-19
21  [설치/설정] 대용량 업로드...   member 컴퓨터존 0 / 0 7070 2008-05-02
20  [PHP] post, get, cookie, session 변수 확인   member 컴퓨터존 0 / 0 9828 2008-05-02
19  PHP Caching to speed up   member 컴퓨터존 0 / 0 7955 2008-05-02
18  PHP 현재 접속자 현황 보여주기   member 컴퓨터존 0 / 0 9245 2008-04-08
17  PHP 한글 레퍼런스   member 컴퓨터존 0 / 0 8573 2008-04-05
16  Flex와 PHP를 이용해서 만든 파일업로드 소스   member 오렌지 0 / 0 9101 2007-11-28
15  프레임(frame) 새로고침 할때 페이지 유지하기   member 웹스톤 0 / 0 10403 2007-11-15
14  [설치/설정] 대용량 업로드...   member 웹스톤 0 / 0 7552 2007-11-15
13  PHP에서 성능 개선을 위한 유용한 팁   member 웹스톤 0 / 0 10059 2007-11-15
12  PHP 버블소트 알고리즘   member 웹스톤 0 / 0 7114 2007-11-14
11  Oracle/PHP 환경의 트랜잭션 관리 이미지   member 웹돌이 0 / 0 45899 2007-10-09
10  FTP 서버 설치 및 관리   member 웹돌이 0 / 0 10030 2007-10-09
9  리눅스 ftp 명령어 모음   member 웹돌이 0 / 0 8002 2007-10-09
8  게시판검색이나 쇼핑몰에 유용한 자바스크립트   member 웹돌이 0 / 0 8245 2007-10-09
7  변수속도 테스트   member 웹돌이 0 / 0 6989 2007-10-09
6  PHP에서 접속자 IP 알아내기   member 높이뜬새 0 / 0 11208 2007-09-08
write
button [1] [2] [4] button