Base de conocimientos · Entorno PHP

El valor local y el valor maestro de la variable PHP upload_max_filesize son diferentes

Última actualización: 2025-06-07

 

La diferencia entre el valor local y el valor maestro de upload_max_filesize en su configuración de PHP suele producirse porque:

  1. Valor local: Es el ajuste que se aplica al script o contexto actual (por ejemplo, un host virtual, un directorio o un archivo .htaccess concretos).
  2. Valor maestro: Es el ajuste global predeterminado del servidor en el archivo principal php.ini archivo mantenido por cPanel > Seleccionar versión de PHP.

Por qué son diferentes

El Valor local de una variable de PHP lo controla el desarrollador mediante comandos del script, mientras que el Valor global se gestiona a través de cPanel > Seleccionar versión de PHP. Los valores locales pueden ser definidos por el desarrollador mediante código o archivos de configuración. Las ubicaciones más habituales para establecer variables de PHP en el código son:

  1. Los valores que sobrescriben la configuración pueden especificarse en .htaccess, httpd.conf, .user.ini o php.ini:
    • Si un .htaccess archivo, httpd.conf, o la configuración de un host virtual específico define un valor para la variable y anula el valor global, el valor local será distinto.
  2. Especificación en tiempo de ejecución en el código PHP:
    • Un script puede utilizar ini_set() para cambiar el upload_max_filesize en tiempo de ejecución para el script actual.
  3. Configuraciones por directorio o por usuario:
    • La configuración de PHP puede variar según los directorios o los usuarios, especialmente en entornos de alojamiento compartido.
    • Estas se especifican en archivos .htaccess, .user.ini o php.ini específicos de un directorio o de un usuario.
  4. Archivo de configuración del script:
    • Scripts como WordPress permiten especificar ini_set() based los valores de las variables de PHP en archivos de configuración como wp-config.php 

Cómo corregir la discrepancia

Para que el valor local y el valor maestro coincidan, debe identificar dónde se produce la anulación y realizar los ajustes necesarios.

 

Pasos para corregirlo:

  1. Compruebe la configuración maestra en php.ini:

    • Localice su archivo php.ini Puede encontrar su ruta mediante:

      <?php
      phpinfo(); ?>
       
    • Busque la directiva upload_max_filesize y establézcala con el valor deseado. Por ejemplo:
       
      upload_max_filesize = 20M
  2. Asegúrese de que no existan anulaciones en .htaccess:

    • Si utiliza Apache, compruebe si hay archivos .htaccess en el directorio actual o en los directorios superiores.

    • Busque directivas como:

      php_value upload_max_filesize 10M
       
    • Elimínelas o ajústelas para que coincidan con su php.ini valor.
  3. Compruebe si hay anulaciones en tiempo de ejecución:

    • Revise sus scripts PHP en busca de cualquier ini_set() llamada que pueda alterar el upload_max_filesize valor durante la ejecución.
  4. Verifique los cambios:

    • Vuelva a ejecutar phpinfo() y confirme que el valor local y el valor maestro coinciden ahora.

 

Notas:

  • Asegúrese de que el valor de post_max_size valor en php.ini también sea lo bastante grande para gestionar las cargas. En general, debe ser mayor que upload_max_filesize.
  • Asegúrese de que el valor de memory_limit también sea lo bastante grande para gestionar las cargas.

← Todos los artículos de base de conocimientos

Tell us what you need

Compare available plans or describe your workload so we can discuss a suitable starting point.