La configuración de PHP es controlada por un archivo llamado ‘php.ini’. El archivo de configuración se lee cuando se inicia el servidor web Apache. Para cambiar la configuración predeterminada de PHP, debe editar el archivo ‘php.ini’ y reiniciar su servidor web.
Fuera de la caja, la configuración de PHP funciona bastante bien, pero la personalización del archivo de configuración le permite seleccionar lo que puede funcionar mejor para usted dependiendo de su arquitectura de hardware y diseño de software.
En esta guía, vamos a mostrarle cómo editar la configuración básica de PHP en su servidor web Apache que se ejecuta en Ubuntu 18.04 VPS.
Requisitos previos
- Un plan de VPS (visite las revisiones de VPS de HostAdvice para los mejores proveedores de VPS)
- Un usuario no root con privilegios sudo
- Servidor web Apache
- PHP
Paso 1: Determine la ubicación de su archivo php.ini
De vez en cuando, tendrá que gestionar el crítico archivo php.ini. La ubicación del archivo puede variar un poco dependiendo de la versión de PHP que se ejecuta en su servidor.
El archivo de configuración se encuentra en:
/etc/php/php_version/apache2/php.ini
Por ejemplo, si está ejecutando PHP 7.0, el archivo se encuentra en:
/etc/php/7.0/apache2/php.ini
El mismo caso se aplica a PHP 7.2. Puede encontrar el archivo de configuración en:
/etc/php/7.2/apache2/php.ini
Paso 2: Abrir el archivo de configuración de PHP para editarlo
Una vez que determine la ubicación de su archivo, el siguiente paso es editarlo usando un editor nano. Utiliza el siguiente comando para abrir el archivo:
$ sudo nano php_ini_file
Por ejemplo:
$ sudo nano /etc/php/7.2/apache2/php.ini
Paso 3: Hacer cambios en el archivo php.ini
Como se mencionó al principio del artículo, la configuración PHP por defecto puede funcionar para la mayoría de los sitios o aplicaciones web. Sin embargo, su entorno puede exigir algunos valores para ser ajustado un poco para asegurarse de que su sitio web se ejecuta sin problemas.
En la mayoría de los casos, usted será la edición de los siguientes ajustes de PHP:
PHP max_execution_time
Esto establece el tiempo máximo de ejecución en segundos que una secuencia de comandos PHP se permite ejecutar antes de que se termine. A veces, puede tener scripts exigentes que deben ejecutarse durante unos minutos y necesita cambiar este valor. El valor por defecto es de 30 segundos pero puede establecer un valor mayor
Valor por defecto:
max_execution_time =30
Cambie a cualquier valor por ejemplo 1800
max_execution_time =1800
PHP upload_max_filesize
El valor por defecto de esta directiva es 2M (dos Megabytes). Este valor controla el tamaño máximo de los archivos que se suben usando scripts PHP. A veces, es necesario cambiar este valor si anticipa subir archivos grandes.
Por ejemplo, si está subiendo una base de datos grande a través de phpMyAdmin, necesitará cambiar este valor.
Valor por defecto:
upload_max_filesize=2M
Cambie a un valor grande, por ejemplo, 16M
upload_max_filesize=16M
PHP post_max_size
Este valor limita la cantidad de datos permitidos en los datos de publicación. Suele afectar a los scripts PHP que utilizan muchos formularios web. El valor también controla los archivos subidos a través de un script PHP, por lo tanto, siempre debe ser mayor que ‘upload_max_filesize’. El valor por defecto para ‘post_max_size’ es 8M.
Valor por defecto:
post_max_size =8M
Personalícelo dependiendo de sus necesidades, por ejemplo.
post_max_size =32M
PHP memory_limit
El valor por defecto para PHP 7.2 ‘memory_limit’ es 128M. A veces, los scripts PHP mal escritos pueden consumir mucha memoria del servidor y afectar a otras aplicaciones que se ejecutan en su VPS. Para evitar esto, PHP ‘ memory_limit’ controla la cantidad de memoria asignada a un script.
Valor por defecto
memory_limit = 128M
Ejemplo de valor personalizado
memory_limit = 256M
También puede usar -1 si quiere asignar una cantidad ilimitada de memoria a su script PHP dependiendo de la RAM disponible en su VPS
memory_limit = -1
Configuración de reporte de errores en PHP
Puede controlar el comportamiento del reporte de errores en PHP usando las siguientes directivas:
display_errors:> Establezca este valor en ‘On’ o ‘Off’ dependiendo de si quiere que PHP muestre los errores cuando se ejecuten los scripts. En PHP 7.2 el valor por defecto es ‘Off’
display_errors = Off
Puede activar el reporte de errores cambiando el valor a ‘On’:
display_errors = On
log_errors: Este valor indica si los errores de un script deben guardarse en el archivo de registro del servidor. En lugar de mostrar los errores a los usuarios normales en un entorno de producción, debería registrarlos. El valor por defecto en PHP 7.2 es ‘On’
log_errors = On
Puede desactivar el registro de errores cambiando el valor a:
log_errors = Off
error_reporting: Esta directiva dicta el nivel de reporte de errores. Para versiones de PHP superiores a la 5.3, el valor por defecto es ‘E_ALL & ~E_DEPRECATED & ~E_STRICT’
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
Puede cambiar el valor dependiendo de los errores que quiera que se reporten. Por ejemplo, para incluir avisos, utilice el valor siguiente
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE
Configuración de la fecha/hora de PHP
También puede cambiar la zona horaria por defecto utilizada por los scripts de PHP.
Busque la línea:
$ ; date.timezone=
Descompárela eliminando el punto y coma y luego introduzca su zona horaria preferida. Puede consultar la lista de zonas horarias compatibles en el sitio web oficial de PHP (http://php.net/manual/en/timezones.php)
Por ejemplo, si desea cambiar la zona horaria a la ciudad de Nueva York, utilice el valor siguiente:
date.timezone= "America/New_York"
Una vez que termine de editar el archivo php.ini, pulse CTRL + X, Y y pulse Intro para guardar los cambios. También debes reiniciar Apache para que la configuración se recargue utilizando el siguiente comando:
$ sudo service apache2 restart
Conclusión
En esta guía, hemos hablado de cómo localizar y editar la configuración de PHP en tu servidor Ubuntu 18.04. También le hemos llevado a través de la configuración básica que debe ajustar para optimizar el rendimiento de su sitio web o aplicaciones web. Creemos que los cambios que realice en su archivo de configuración de PHP le ayudarán a tener un entorno más fluido para ejecutar sus sitios web.