Cambiar la configuración de PHP (Apache)

Información válida para: Cloud Hosting Gestionado con servidor web de Apache

Puede configurar su entorno PHP usando un archivo .htaccess.

PHP proporciona variables especiales, las llamadas directivas, para los cambios de configuración. Esto se puede usar, por ejemplo, para asignar los recursos disponibles, editar cuentas PHP o activar y desactivar varias funciones.

Dado que PHP se ejecuta como un módulo de Apache, los archivos .user.ini no tienen ningún efecto, ya que el servidor web de Apache no los tiene en consideración. En vez de ello, utilice .htaccess.

¿Qué es .htaccess?

.htaccess es un archivo de configuración de Apache que puede ser usado para configurar reglas relacionadas con directorios.

.htaccess debe ser creado como un archivo de texto (texto plano), rellenado y almacenado en el directorio deseado en el espacio web. Allí afecta automáticamente a todos los subdirectorios (un archivo .htaccess en el directorio raíz del documento es válido para todo el espacio web).

Nota: si el directorio ya contiene un archivo.htaccess, las entradas deben añadirse allí, ya que Apache considera sólo un archivo .htaccess.

Directivas de PHP

Para una vista general de las directivas disponibles para ajustar la configuración, consulte http://php.net/manual/es/ini.list.php.

A tener en cuenta: sólo las directivas que están asignadas a un modo PHP_INI_* de tipo PHP_INI_ALL o PHP_INI_PERDIR pueden configurarse a través del archivo .htaccess. (más información en php.net)

Sintaxis de las entradas .htaccess

En .htaccess, los valores se deben asignar a las directivas según el siguiente esquema:

Código Utilizado para
php_value nombre valor Valores no booleanos
php_flag nombre onoff Valores booleanos
Ejemplos

Así establece el límite de memoria para los procesos PHP en 512 MB:

php_value memory_limit 512M

Así activa la visualización de errores en tiempo de ejecución:

php_flag display_errors on
Ejemplos de .htaccess

Nota: para asegurarse de que el código sólo se ejecuta si la versión PHP correspondiente se ejecuta como un módulo de Apache, también se utiliza la directiva <IfModule>.

PHP 5.x:

<IfModule mod_php5.c>

############################################
## adjust memory limit
    php_value memory_limit 512M

## adjust maximum time in seconds a script is allowed to run 
    php_value max_execution_time 600

## enable error messages
 php_flag display_errors on

</IfModule>   

PHP 7:

<IfModule mod_php7.c>

############################################
## adjust memory limit
php_value memory_limit 512M

## adjust maximum time in seconds a script is allowed to run
php_value max_execution_time 600

## enable error messages
php_flag display_errors on

</IfModule> 

Comprobar la configuración

Si una configuración se ha ajustado de manera exitosa, se puede comprobar con el siguiente pequeño script en el directorio correspondiente:

<?php phpinfo(); ?>

La función phpinfo() muestra información detallada sobre el estado actual de PHP. En las opciones de configuración, los valores locales se muestran siempre a la izquierda; el valor modificado debería mostrarse ahora aquí.

Nota: dependiendo de la pila seleccionada, puede que ya exista un archivo phpinfo.php correspondiente en el directorio raíz de su documento.