PHP 파일 업로드 용량 늘리기

PHP는 기본적으로 업로드 가능한 파일 크기에 제한을 두고 있습니다.
대용량 파일 업로드가 필요한 경우, 설정을 변경해야 합니다.


PHP 기본값

항목 기본값 설명
upload_max_filesize 2MB 업로드 가능한 최대 파일 크기
post_max_size 8MB POST 요청 전체 크기 제한

따라서 기본 환경에서는 2MB 이상의 파일은 업로드할 수 없습니다.


1. php.ini 설정 변경

PHP 설정 파일은 일반적으로 /etc/php.ini에 위치합니다.

sudo vi /etc/php.ini

파일에서 다음 항목을 수정합니다. 예: 최대 50MB 허용

upload_max_filesize = 50M
post_max_size = 50M
max_execution_time = 300
max_input_time = 300
항목 권장값 예시 설명
upload_max_filesize 50M 단일 파일 업로드 제한
post_max_size 50M POST 전체 데이터 크기 제한
max_execution_time 300 업로드 실행 최대 시간(초)
max_input_time 300 입력 데이터 파싱 시간 제한(초)

주의: post_max_size는 반드시 upload_max_filesize보다 크거나 같아야 합니다.


2. 웹 서버 재시작

설정 변경 후 웹 서버를 재시작해야 반영됩니다.

  • Apache 환경
sudo systemctl restart httpd
  • Nginx + PHP-FPM 환경
sudo systemctl restart php-fpm
sudo systemctl restart nginx

3. 설정 확인

PHP 정보 페이지를 생성하여 값이 반영되었는지 확인합니다.

<?php phpinfo(); ?>

브라우저에서 확인 시 upload_max_filesize, post_max_size 값이 변경되어 있어야 합니다.
Nginx 환경에서는 별도의 업로드 제한(client_max_body_size)을 추가해야 하며, SELinux가 활성화된 경우 권한 설정도 반드시 확인해야 합니다.

댓글

알짜게시판

리눅스 Apache에서 GPTBot·Amazonbot·AhrefsBot의 게시판 이미…
리눅스 Cloudflare R2 자동 업로드 구성하기. 특정 폴더에 파일…
리눅스 아파치 일반 계정 파일 접근 권한 설정과 mod-ruid2 적…
리눅스 Dante SOCKS5 프록시 서버 구축 및 설정
리눅스 Apache 웹 로그 분석하기 – awk와 GoAccess 활용
열람 리눅스 PHP 파일 업로드 용량 늘리기
리눅스 구글 크롬 콘솔 'Attestation check for Topics on' 에…
리눅스 PHP-FPM 튜닝을 위한 메모리 계산
리눅스 데몬(systemd service) 작성 및 실행하기
리눅스 메일(Mail) 삭제/초기화
리눅스 PHP 버전 추가하기
리눅스 yum 에서 Thread died in Berkeley DB library 오류
리눅스 VNSTAT 설치하기
리눅스 로그 삭제 및 비우기(?)
리눅스 .htaccess 를 이용해서 https 이동하기
리눅스 윈도우 프로그램 실행 (centos7, wine 7.0)
리눅스 웹서버 상태 확인 후 자동 재시작 쉘 스크립트
리눅스 Composer 설치하기
리눅스 Swap 생성/수정
리눅스 바이러스 검사
리눅스 간단한 보안 체크하기