NGINX 및 PHP에서 파일 업로드 크기 제한을 변경하는 방법
1. NGINX에 파일 업로드 크기 제한 변경
NGINX에서 파일 업로드 크기 제한을 변경하려면 다음 단계를 따르십시오.
1-1 NGINX 구성 파일을 엽니다.
이것은 일반적으로 /etc/nginx/nginx.conf 파일입니다.
1-2 http 블록 안에 다음 줄을 추가합니다.
vim /etc/nginx/nginx.conf
client_max_body_size 20M;
이 예에서는 최대 파일 업로드 크기로 20MB를 설정했습니다.
1-3 구성 파일을 저장하고 NGINX를 다시 로드합니다.
sudo service nginx reload
2. PHP에서 파일 업로드 크기 제한 변경
PHP에서 파일 업로드에 대한 크기 제한을 변경하려면 다음 단계를 따르십시오.
2-1 PHP 구성 파일을 엽니다.
이것은 일반적으로 /etc/php/php.ini 파일입니다.
2-2 upload_max_filesize 및 post_max_size 지시문의 값을 변경합니다.
예를 들어 다음과 같이 값을 변경할 수 있습니다.
vim /etc/php/php.ini
upload_max_filesize = 20M
post_max_size = 20M
2-3 구성 파일을 저장하고 PHP를 다시 시작하십시오.
sudo service php-fpm restart
이제 파일 업로드 크기 제한이 NGINX 및 PHP에서 변경되었습니다.
nginx.conf 구성
vim /etc/nginx/nginx.conf
$ vim /etc/nginx/nginx.conf
...
client_max_body_size 64M;
client_body_timeout 60s;
https://runebook.dev/en/docs/nginx/http/ngx_http_core_module
http://nginx.org/en/docs/http/ngx_http_core_module.html
php.ini 설정
vim /etc/php.ini
$ vim /etc/php.ini
max_execution_time = 300
max_input_time = 60
memory_limit = 256M
post_max_size = 64M
file_uploads = On
upload_max_filesize = 64M
max_file_uploads = 20
각 스크립트의 최대 실행 시간(초)
max_execution_time = 300
각 스크립트가 요청 데이터를 구문 분석하는 데 허용되는 최대 시간입니다.
예기치 않게 오래 실행되는 스크립트를 제거하기 위해 프로덕션 서버에서 이 시간을 제한하는 것이 좋습니다.
; 참고: 이 지시문은 CLI SAPI에 대해 -1로 하드코딩됩니다.
; 기본값: -1(무제한)
; 개발 가치: 60(60초)
; 생산 값: 60(60초)
max_input_time = 60
스크립트가 사용할 수 있는 최대 메모리 양(128MB)
memory_limit = 256MB
PHP가 허용하는 POST 데이터의 최대 크기.
제한을 비활성화하려면 값이 0이 될 수 있습니다.
enable_post_data_reading에 의해 POST 데이터 읽기가 비활성화된 경우 무시됩니다.
post_max_size = 6400만
HTTP 파일 업로드 허용 여부.
file_uploads = 켜짐
업로드된 파일의 최대 허용 크기.
upload_max_filesize = 64MB
단일 요청을 통해 업로드할 수 있는 최대 파일 수
max_file_uploads = 20