PHP es uno de los lenguajes de scripting más populares para la creación de páginas web dinámicas. La mayoría de los sitios y aplicaciones web se basan en scripts PHP. Es por este motivo que los administradores de sitios deberían entender cómo pueden controlar la ejecución de scripts PHP. Generalmente, el comportamiento de PHP viene definido por distintos parámetros de configuración. Estos parámetros especifican distintos aspectos de la ejecución de los scripts, como puede ser el rendimiento (por ejemplo la cantidad de memoria que puede usar un script), la seguridad (por ejemplo, el acceso a servicios y sistemas de archivos), etc. Los administradores puede que deseen ajustar estos parámetros por distintas razones:

  • Para evitar una escasez de memoria o un bloqueo del servidor ocasionado por scripts escritos de forma pobre.
  • Para proteger los datos de scripts malintencionados.
  • Para cumplir los requisitos de una determinada aplicación web.
  • Para analizar scripts propios y de terceros.

Configuración personalizada de PHP en Plesk

Generalmente, los parámetros de configuración de PHP son definidos por el archivo de configuración a nivel de servidor. En el caso de Linux este suele ser /etc/php.ini y en el caso de Windows - %WIN%\php.ini. Este archivo es administrado por su proveedor de hosting y define la configuración PHP para todos los sitios web alojados en el servidor. A partir de Plesk 10.4, los parámetros de configuración de PHP pueden ajustarse mediante el panel del cliente y usted puede ajustarlos de forma individualizada para cada suscripción o plan de hosting. Además, sus clientes (de permitírselo) pueden ajustar su definición de configuración PHP de forma individualizada para cada uno de sus sitios web y subdominios. En el diagrama que aparece a continuación puede ver la jerarquía de parámetros de configuración de PHP.

image-Jerarquía-de-la-configuración-PHP

Usted puede establecer la configuración PHP personalizada en las propiedades de un determinado plan de servicio, plan complementario o suscripción (en la pestaña Configuración PHP). La configuración de PHP desde un nivel más elevado actúa como definición para un nivel inferior, por lo que cada nivel inferior prevalece sobre esta. Por ejemplo, usted puede aplicar algunas limitaciones PHP a un plan de servicio y a continuación un plan complementario a sus clientes que elimine las limitaciones. La configuración de PHP del plan complementario prevalecerá sobre la configuración definida en el plan de servicio principal.
Si los clientes disponen de los permisos correspondientes, estos podrán especificar la configuración de PHP única para cada sitio web (o subdominio) en su suscripción.

Grupos de parámetros de configuración de PHP

Para su comodidad, en Plesk, todos los parámetros de configuración de PHP se dividen en dos grupos:

  • Parámetros de rendimiento. Estos parámetros definen la forma en la que los scripts interactúan con los recursos del sistema. Por ejemplo: utilice el parámetro memory_limit para limitar la cantidad de memoria dedicada a un script y, como consecuencia, prevenir fugas de memoria; o evite que los scripts acaparen el servidor limitando el tiempo máximo de ejecución de los mismos mediante el parámetro max_execution_time.
  • Parámetros comunes. Este grupo contiene otros parámetros de configuración de PHP usados con frecuencia. Generalmente se trata de: Parámetros de seguridad (como puede ser el cambio al modo seguro de PHP o el permiso para registrar variables globales), parámetros de informe de errores (como la directiva para el registro de errores), etc.

Nota: Si utiliza Plesk para Windows o para Linux y PHP no se ejecuta como módulo Apache, sus clientes podrán invalidar algunos parámetros de configuración PHP sin tener en cuenta ningún permiso. Estos pueden usar la función ini_set() en sus scripts para cambiar los valores de los siguientes parámetros: memory_limit, max_execution_time y aquellas directivas adicionales que PHP permita configurar en cualquier lugar (directivas PHP_INI_ALL; más información en http://php.net/manual/en/ini.list.php).

Si en los parámetros comunes y de rendimiento no encuentra los parámetros deseados, póngase en contacto con su proveedor de hosting.

Los valores predeterminados de los parámetros de PHP

Usted puede establecer el valor de cada uno de los parámetros en Configuración de PHP, seleccionando un valor de una definición, introduciendo un valor personalizado o dejando seleccionado el valor Predeterminado. En el último caso, Plesk obtiene el valor del parámetro de la configuración de PHP a nivel de servidor. Las únicas excepciones son los planes complementarios: de establecer el valor a Predeterminado en la pestaña Configuración de PHP del complemento, se conservará el parámetro del valor del plan de servicio principal.

Cómo permitir a los clientes realizar cambios en la configuración de PHP

Usted puede permitir a sus clientes reemplazar la configuración PHP de una suscripción por su propia configuración PHP de forma individualizada para su sitio web y su dominio. Para ello, debería utilizar los siguientes permisos en la pestaña Permisos de una determinada suscripción o plan de servicio:

  • Administración de los parámetros de configuración de rendimiento de hosting. Además de la gestión de algunos otros parámetros, este permiso concede a los clientes acceso a la configuración de PHP mediante el grupo configuración de rendimiento.
  • Administración de los parámetros de configuración de PHP comunes. De concederse, permite a los clientes ajustar la configuración de PHP mediante el grupo configuración común.

Tenga en cuenta que usted solo podrá cambiar estos permisos para un plan (suscripción) si a este se le ha concedido el permiso Administración de configuración de hosting.

Incluso en el caso de que sus clientes no dispongan de permisos para ajustar la configuración de PHP, usted (como administrador) siempre podrá realizar esta configuración de PHP de forma individualizada por sitio web (subdominio). Para ello, abra la cuenta de hosting deseada del panel del revendedor y aplique los cambios en la configuración de un sitio web (subdominio) específico en la pestaña Configuración de PHP.