Nginx + php subir solución de archivo grande

  
                  Cuando use nginx para hacer un servidor web, debe prestar especial atención al parámetro client_max_body_size al cargar archivos grandes. De lo contrario, se interrumpirá en la solicitud de nginx. No se puede grabar en php.

Primero modifique el archivo php.ini: Configuración de parámetros Descripción file_uploads en Si se permite la carga de archivos a través de HTTP. El valor predeterminado es ON. Upload_tmp_dir – El archivo se carga en el servidor donde se almacena el archivo temporal. Si no se especifica, se usará la carpeta temporal predeterminada del sistema upload_max_filesize 8m, lo que significa que se puede cargar el tamaño máximo del archivo. El valor predeterminado es 2M post_max_size 8m se refiere al valor máximo que puede recibir PHP a través del formulario POST, incluidos todos los valores en el formulario. El valor predeterminado es 8M

Descripción

En general, después de configurar los cuatro parámetros anteriores, la carga de archivos < = 8M no es un problema en las condiciones normales de la red, pero si desea cargar > 8M archivos grandes, solo los cuatro elementos anteriores no son necesariamente capaces de pasar. A menos que su red realmente tenga una velocidad de carga de 100M /S, debe continuar configurando los siguientes parámetros. Max_execution_time 600 Tiempo máximo valor (en segundos) por ejecución de página PHP, predeterminado 30 segundos max_input_time 600 Tiempo máximo requerido para recibir datos por página PHP, predeterminado 60 segundos memory_limit 8m Memoria máxima consumida por página PHP, predeterminado 8M

Pero aún no puede, porque el servidor web utiliza nginx, google un poco, encontró un parámetro agregado en el nginx conf: El valor predeterminado es 1M, debe aumentar. Agregue un client_max_body_size 30m en nginx.conf;

Reinicie 30m para indicar la carga máxima 30M, cuánto debe configurar.

Resumen de texto

Por defecto, nginx permite que el número máximo de bytes de un solo archivo solicitado por el cliente sea de 1M, lo que significa que si el archivo cargado excede de 1M, no se cargará. Puede modificar manualmente este parámetro, por ejemplo, coloque el siguiente código en la sección http, para poder cargar archivos por debajo de 10M

client_max_body_size 10m; también limitar la configuración del tamaño del archivo de carga en php.ini también está configurado, el valor predeterminado es

post_max_size = 8M upload_max_filesize = 2M

Copyright © Conocimiento de Windows All Rights Reserved