PHP 7 - Configuración del archivo PHP.INI

El archivo de configuración de PHP, php.ini, es la forma final e inmediata de afectar la funcionalidad de PHP. El archivo php.ini se lee cada vez que se inicializa PHP. En otras palabras, httpd se reinicia para la versión del módulo o con cada ejecución de script para la versión CGI. Si su cambio no aparece, recuerde detener y reiniciar httpd. Si aún no aparece, use phpinfo () para verificar la ruta a php.ini.

El archivo de configuración está bien comentado y es completo. Las claves distinguen entre mayúsculas y minúsculas, los valores de las palabras clave no; los espacios en blanco y las líneas que comienzan con punto y coma se ignoran. Los valores booleanos se pueden representar mediante 1/0, Sí / No, Activado / Desactivado o Verdadero / Falso. Los valores predeterminados en php.ini-dist darán como resultado una instalación de PHP razonable que se puede modificar más adelante.

Aquí estamos explicando las configuraciones importantes en php.ini que puede necesitar para su analizador PHP.

short_open_tag = Desactivado

Las etiquetas abiertas cortas tienen este aspecto: <? ?>. Esta opción debe establecerse enOff si desea utilizar las funciones XML.

safe_mode = Desactivado

Si está activado, probablemente compiló PHP con el indicador --enable-safe-mode. El modo seguro es más relevante para el uso de CGI. Vea la explicación en la sección "Opciones de tiempo de compilación CGI" dada anteriormente en este capítulo.

safe_mode_exec_dir = [DIR]

Esta opción es relevante solo si el modo seguro está activado; también se puede configurar con el indicador --with-exec-dir durante el proceso de compilación de Unix. PHP en modo seguro solo ejecuta binarios externos desde este directorio. El valor predeterminado es / usr / local / bin. Esto no tiene nada que ver con ofrecer una página web PHP / HTML normal.

safe_mode_allowed_env_vars = [PHP_]

Esta opción establece qué variables de entorno pueden cambiar los usuarios en modo seguro. El valor predeterminado son solo aquellas variables precedidas por "PHP_". Si esta directiva está vacía, la mayoría de las variables se pueden modificar.

safe_mode_protected_env_vars = [LD_LIBRARY_PATH]

Esta opción establece qué variables de entorno los usuarios no pueden cambiar en modo seguro, incluso si safe_mode_allowed_env_vars está configurado de manera permisiva.

disable_functions = [función1, función2 ...]

Una adición bienvenida a la configuración de PHP4 y perpetuada en PHP5 es la capacidad de deshabilitar las funciones seleccionadas por razones de seguridad. Anteriormente, esto requería la edición manual del código C a partir del cual se creó PHP. Las funciones de sistema de archivos, sistema y red probablemente deberían ser las primeras en desaparecer porque permitir la capacidad de escribir archivos y alterar el sistema a través de HTTP nunca es una idea tan segura.

max_execution_time = 30

La función set_time_limit () no funcionará en modo seguro. Por lo tanto, esta es la forma principal de hacer que se agote el tiempo de espera de un script en modo seguro. En Windows, debe cancelar en función de la memoria máxima consumida en lugar del tiempo. También puede usar la configuración de tiempo de espera de Apache para el tiempo de espera, pero eso también se aplicará a los archivos que no sean PHP en el sitio.

error_reporting = E_ALL & ~ E_NOTICE

El valor predeterminado es E_ALL & ~ E_NOTICE, todos los errores excepto los avisos. Los servidores de desarrollo deben configurarse al menos en el valor predeterminado; solo los servidores de producción deberían considerar un valor menor.

error_prepend_string = [" "]

Con su sujetalibros, error_append_string, esta configuración le permite hacer que los mensajes de error tengan un color diferente al del otro texto.

warn_plus_overloading = Apagado

Esta configuración emite una advertencia si el operador + se usa con cadenas, como en un valor de formulario.

orden_variables = EGPCS

Esta opción de configuración reemplaza a gpc_order. Ambos ahora están en desuso junto con register_globals. Establece el orden de las diferentes variables: Entorno, GET, POST, COOKIE y SERVER (también conocido como Built-in). Puede cambiar este orden. Las variables se sobrescribirán sucesivamente en el orden de izquierda a derecha, ganando la mano la de la derecha cada vez. Esto significa que si dejó la configuración predeterminada y usó el mismo nombre para una variable de entorno, una variable POST y una variable COOKIE, la variable COOKIE poseería ese nombre al final del proceso. En la vida real, esto no sucede mucho.

register_globals = Desactivado

Esta configuración le permite decidir si desea registrar las variables EGPCS como globales. Esto ahora está en desuso y, a partir de PHP4.2, este indicador está configurado enOff, por defecto. En su lugar, utilice las matrices superglobales. Todas las listas de códigos principales de este libro utilizan matrices superglobales.

gpc_order = GPC

Esta configuración ha quedado obsoleta.

magic_quotes_gpc = Activado

Esta configuración escapa a las comillas en los datos GET / POST / COOKIE entrantes. Si usa muchos formularios que posiblemente se envían a sí mismos u otros formularios y muestran valores de formulario, es posible que deba establecer esta directiva en On o prepararse para usar addedlashes () en datos de tipo cadena.

magic_quotes_runtime = Desactivado

Esta configuración escapa a las comillas en la base de datos entrante y las cadenas de texto. Recuerde que SQL agrega barras diagonales a las comillas simples y apóstrofos cuando almacena cadenas y no las elimina cuando las devuelve. Si esta configuración está Desactivada, necesitará usar stripslashes () al generar cualquier tipo de datos de cadena desde una base de datos SQL. Si magic_quotes_sybase está activado, debe estar desactivado.

magic_quotes_sybase = Desactivado

Esta configuración escapa de las comillas simples en la base de datos entrante y las cadenas de texto con comillas simples estilo Sybase en lugar de barras invertidas. Si magic_quotes_runtime está configurado como Activado, debe estar Desactivado.

auto-prepend-file = [ruta / a / archivo]

Si se especifica una ruta aquí, PHP debe incluirla automáticamente () al principio de cada archivo PHP. Incluir restricciones de ruta se aplican.

auto-append-file = [ruta / a / archivo]

Si se especifica una ruta aquí, PHP debe incluir automáticamente () al final de cada archivo PHP, a menos que escape usando la función exit (). Incluir restricciones de ruta se aplican.

include_path = [DIR]

Si establece este valor, solo podrá incluir o solicitar archivos de estos directorios. El directorio de inclusión generalmente se encuentra debajo de la raíz de su documento. Esto es obligatorio si está ejecutando en modo seguro. Establezca esto en .in, para incluir los archivos del mismo directorio en el que se encuentra su script. Varios directorios están separados por dos puntos:.: / Usr / local / apache / htdocs: / usr / local / lib.

doc_root = [DIR]

Si está utilizando Apache, ya ha establecido una raíz de documento para este servidor o host virtual en httpd.conf. Establezca este valor aquí si está usando el modo seguro o si desea habilitar PHP solo en una parte de su sitio (por ejemplo, solo en un subdirectorio de su raíz web).

file_uploads = [activar / desactivar]

Active esta marca si va a cargar archivos usando un script PHP.

upload_tmp_dir = [DIR]

No descomente esta línea a menos que comprenda las implicaciones de las cargas HTTP.

session.save-handler = archivos

Excepto en raras circunstancias, no querrá cambiar esta configuración. Así que no lo toques.

ignore_user_abort = [Activar / Desactivar]

Esta configuración controla lo que sucede si un visitante del sitio hace clic en el botón Detener del navegador. El valor predeterminado es Activado, lo que significa que el script continúa ejecutándose hasta que se completa o se agota el tiempo de espera. Si la configuración se cambia a Desactivada, el script se cancelará. Esta configuración solo funciona en modo módulo, no CGI.

mysql.default_host = nombre de host

El host del servidor predeterminado que se utilizará al conectarse al servidor de la base de datos si no se especifica ningún otro host.

mysql.default_user = nombre de usuario

El nombre de usuario predeterminado que se utilizará al conectarse al servidor de la base de datos si no se especifica ningún otro nombre.

mysql.default_password = contraseña

La contraseña predeterminada que se utilizará al conectarse al servidor de la base de datos si no se especifica ninguna otra contraseña.