NGINX 및 PHP(php-fpm)에서 파일 업로드 크기 제한을 50MB로 변경
1. NGINX 설정 변경
NGINX에서는 client_max_body_size 지시문을 사용하여 업로드 크기 제한을 설정할 수 있습니다. 일반적으로 NGINX 구성 파일은 /etc/nginx/nginx.conf에 있습니다. 이 파일을 열고 client_max_body_size 지시문을 http 블록에 붙여넣습니다. 예를 들어 업로드 크기 제한을 50MB로 늘리려면 다음과 같이 작성할 수 있습니다.
vim /etc/nginx/conf.d/default.conf
http {
...
server {
...
client_max_body_size 10M;
...
}
...
}
2. PHP 설정 변경
PHP에서 파일 업로드 크기 제한을 설정할 수도 있습니다. PHP 구성 파일은 일반적으로 /etc/php.ini에 있습니다. 이 파일을 열고 upload_max_filesize 및 post_max_size 값을 50M로 변경합니다.
$ php --ini | grep php.ini
Configuration File (php.ini) Path: /etc/php/8.1/cli
Loaded Configuration File: /etc/php/8.1/cli/php.ini
vim /etc/php/8.1/cli/php.ini
upload_max_filesize = 50M
post_max_size = 50M
3. PHP-FPM 설정 변경
PHP-FPM에서 파일 업로드 크기 제한을 설정할 수도 있습니다. PHP-FPM 구성 파일은 일반적으로 /etc/php-fpm.d/www.conf에 있습니다. 이 파일을 열고 php_value(upload_max_filesize) 및 php_value(post_max_size) 값을 50M로 변경합니다.
- 데비안(우분투): /etc/php/{version}/fpm/pool.d/www.conf
- 레드햇(CentOS): /etc/php-fpm.d/www.conf
vim /etc/php/8.1/fpm/pool.d/www.conf
php_value(upload_max_filesize) = 50M
php_value(post_max_size) = 50M
4. 변경 사항 적용
구성 파일을 변경한 후 변경 사항을 적용하려면 NGINX 및 PHP-FPM을 다시 시작하십시오.
- nginx를 다시 시작하십시오.
sudo service nginx restart
$ nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
- php-fpm을 다시 시작하십시오.
$ php-fpm8.1 -t
(23-Mar-2023 10:19:32) NOTICE: configuration file /etc/php/8.1/fpm/php-fpm.conf test is successful
systemctl restart php8.1-fpm
위 단계에 따라 NGINX 및 PHP-FPM에서 파일 업로드 크기 제한을 50MB로 설정할 수 있습니다.