[리눅스] NGINX 및 PHP에서

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에서 변경되었습니다.


728×90

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