>  기사  >  백엔드 개발  >  PHP 및 Nginx 파일 업로드 크기 제한 문제

PHP 및 Nginx 파일 업로드 크기 제한 문제

王林
王林원래의
2019-11-08 09:41:352144검색

PHP 및 Nginx 파일 업로드 크기 제한 문제

PHP 대용량 파일 업로드는 많은 리소스를 차지하므로 업로드 크기를 제한해야 합니다. 다음은 세 가지 관련 매개변수입니다.

client_max_body_size
upload_max_filesize
post_max_size

일부 nginx+php 웹사이트의 경우 업로드되는 파일 크기가 여러 가지로 제한됩니다. 하나는 클라이언트가 업로드하는 파일의 크기를 제한하는 nginx 자체의 제한이고, 다른 하나는 php.ini 파일의 여러 위치에 있는 기본 설정입니다.

그래서 업로드 파일 크기 제한 문제를 해결하려면 많은 수정이 이루어져야 합니다. 아래에 몇 가지 장소가 나열되어 있습니다.

해결책:

1. /usr/local/nginx/conf/nginx.conf 파일을 수정하고 client_max_body_size를 찾아 다음 값을 설정하려는 값으로 설정합니다. 예:

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 
     # 
     location ~ \.php$ { 
       root      /home/www/htdocs; 
       fastcgi_pass  127.0.0.1:9000; 
       fastcgi_index index.php; 
       fastcgi_param SCRIPT_FILENAME /home/www/htdocs$fastcgi_script_name; 
       include    fastcgi_params; 
   
       client_max_body_size 35m;    #客户端上传文件大小设为35M 
       client_body_temp_path /home/www/nginx_temp;    #设置临时目录 
     }

2. php.ini 파일을 수정하세요.

upload_max_filesize = 8M  
post_max_size = 10M  
memory_limit = 20M 
max_execution_time=300 
file_uploads = On #默认允许HTTP文件上传,此选项不能设置为OFF。
upload_tmp_dir =/tmp/www

대용량 파일을 업로드할 때, 특정 시간을 초과하면 스크립트 실행이 30을 초과한다는 오류가 발생합니다. 이는 php.ini 구성 파일의 max_execution_time配置选项在作怪,其表示每个脚本最大允许执行时间(秒),0 表示没有限制。你可以适当调整max_execution_time 값을 0으로 설정하는 것을 권장하지 않기 때문입니다.

추천 튜토리얼: PHP 비디오 튜토리얼

위 내용은 PHP 및 Nginx 파일 업로드 크기 제한 문제의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.