En este post vamos a ver un problema que pasa con file_get_contents
en PHP cuando usamos dicha función para hacer una petición http o queremos mostrar el contenido de una página y la descargamos con esta función.
Recuerda que igualmente podemos usar file_get_contents
para hacer una petición HTTP usando stream_context_create.
Bien, veamos qué hacer si file_get_contents no funciona en PHP, no muestra errores ni avisos o devuelve false
sin razón aparente.
En algunos servidores mal configurados, la función va a fallar silenciosamente pero devolverá false
. Lo primero que debemos hacer es comprobar en dónde está el problema.
Si es una petición HTTP podemos comprobar usando otra librería o método para comprobar que el servidor está bien (como Postman). En caso de que sí, pasemos al siguiente paso.
Normalmente file_get_contents
falla porque, por seguridad o configuración, allow_url_fopen
y/o allow_url_include
está deshabilitado en el php.ini.
Lo único que hay que hacer es habilitarlo y reiniciar el servidor en algunos casos. Se debe ver así:
;;;;;;;;;;;;;;;;;;
; Fopen wrappers ;
;;;;;;;;;;;;;;;;;;
; Whether to allow the treatment of URLs (like http:// or ftp://) as files.
; http://php.net/allow-url-fopen
allow_url_fopen=On
; Whether to allow include/require to open URLs (like http:// or ftp://) as files.
; http://php.net/allow-url-include
allow_url_include=On
Y con eso debería de funcionar. Yo tuve ese problema recientemente al implementar un Captcha con PHP.
El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…
En este post te voy a enseñar a designar una carpeta para imprimir todos los…
En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…
Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…
Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…
Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…
Esta web usa cookies.
Ver comentarios
Muchas gracias ahora entiendo por que no funcionaba en el servidor, efectivamente era eso, te debo una <3 igual queria poner el captcha jajaja
Hola es posible que el fallo lo genere el firewall de Windows ? Ya probé las dos entradas comentadas acá y sigue sin funcionar