¿Por qué allow_url_fopen esta desactivado? Imprimir

  • 15

Hosting cPanel

 

La función allow_url_fopen se encuentra desactivada en todos nuestros servidores, tanto para planes de hosting como reseller hosting (revendedores de hosting) debido a motivos de seguridad pues esta directiva abrir, incluir o usar, un fichero remoto usando una URL en lugar de un path a un archivo local. Por motivos de seguridad, esta directiva debe estar deshabilitada.

Lamentablemente muchos desarrolladores incluyen archivos apuntando a una URL remota, incluso si el fichero se encuentra dentro del propio sistema local. Por ejemplo:

<?php include("http://www.ejemplo.com/includes/ejemplo_include.php"); ?>

Con allow_url_fopen deshabilitado, esta instrucción no funcionará. No obstante, el archivo deberá ser incluido con una ruta local. Hay 3 formas de hacerlo:

  1. Usando una ruta relativa, como ../includes/example_include.php.
  2. Usando una ruta absoluta como /home/username/example.com/includes/example_include.php.
  3. Usando la variable de entorno PHP $_SERVER ['DOCUMENT_ROOT'], que devuelve la ruta absoluta al directorio de raíz del sitio Web. Ésta es con mucho la mejor (y la más portable) solución.

El ejemplo que sigue muestra la variable de entorno en acción:

<?php include($_SERVER['DOCUMENT_ROOT']."/includes/example_include.php"); ?>

 

¿Fue útil la respuesta?

« Atrás