Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] problema con file get contents

Estas en el tema de problema con file get contents en el foro de PHP en Foros del Web. Hola amigos de FDW. tengo un problema, haber si alguien me da una manito. Resulta que estado conectandome a un sitio X para extraer algunos ...
  #1 (permalink)  
Antiguo 19/11/2013, 08:27
Avatar de chichote
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Santiago - Chile
Mensajes: 1.868
Antigüedad: 19 años, 4 meses
Puntos: 145
problema con file get contents

Hola amigos de FDW.

tengo un problema, haber si alguien me da una manito.

Resulta que estado conectandome a un sitio X para extraer algunos datos, pero al parecer han cambiado algunas reglas y ya no puedo extraer los datos, me arroja error 500.

Traté de solucionarlos instalando php simple proxy (http://benalman.com/code/projects/ph...amples/simple/)

Me puse muy feliz cuando cargue la web a traves del navegador y a traves del proxy y me arrojó correctamente los datos. pero el problema persiste cuando trato de hacerlo a traves de file_get_contents, por ejemplo htttp://www.MiWeb.com/proxy.php?url=http://www.WebConLosDatos.com.

No entiendo porque desde el navegador me muestra los datos y desde file_get_contents me da error 500.

Tambien probé con curl y nada, me devuelve lo mismo.

Algo importante, si cargo otra web desde el proxy no hay problema, es solo con esa web.

Alguna idea? se lo agradecería mucho.

saludos.
__________________
http://chicho.ninja yiaaaa
  #2 (permalink)  
Antiguo 19/11/2013, 08:49
Avatar de quinqui  
Fecha de Ingreso: agosto-2004
Ubicación: Chile!
Mensajes: 776
Antigüedad: 19 años, 8 meses
Puntos: 56
Respuesta: problema con file get contents

Holas, chichote.

Y en la documentación oficial, ninguno de los tips y consejos que dan te dieron luces? Digo, por ejemplo eso de los fopen_wrappers que mencionan para tener permisos de abrir una URL en vez de un archivo local...

Ahora, el error 500 te lo está arrojando tu servidor, no el de la URL consultada, cierto? En ese caso, tu código tiene algún error de escritura tal vez. ¿Probaste comentando la línea donde ejecutas el fopen_get_contents(), para saber si efectivamente es en ella donde se gatilla el fallo?

Saludos!
__________________
pipus.... vieeeeeji plomius!!!
*quinqui site*
  #3 (permalink)  
Antiguo 19/11/2013, 09:01
Avatar de chichote
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Santiago - Chile
Mensajes: 1.868
Antigüedad: 19 años, 4 meses
Puntos: 145
Respuesta: problema con file get contents

Cita:
Iniciado por quinqui Ver Mensaje
Holas, chichote.

Y en la documentación oficial, ninguno de los tips y consejos que dan te dieron luces? Digo, por ejemplo eso de los fopen_wrappers que mencionan para tener permisos de abrir una URL en vez de un archivo local...

Ahora, el error 500 te lo está arrojando tu servidor, no el de la URL consultada, cierto? En ese caso, tu código tiene algún error de escritura tal vez. ¿Probaste comentando la línea donde ejecutas el fopen_get_contents(), para saber si efectivamente es en ella donde se gatilla el fallo?

Saludos!
Hola Quinqui, el error 500 me lo arroja la pagina a la que quiero acceder, mi server anda bien, de hecho he probado cargar otras paginas y anda bien, es solo con esa.

Haciendo un poco de ingenieria inversa, lo que creo es que han creado alguna regla en el iis (porq tienen win) que bloquea las peticiones que no vengan de algun agente conocido como los spider de los buscadores o los navegadores. En mi caso no era ni uno ni lo otro por eso me bloqueaba, y es la razon de porque cuando cargo el proxy desde el navegador si me entrega la info.

Entonces cual es la solucion? se me ocurrio simular el navegador, y a poco buscar en google encontre lo siguiente a traves de curl

Código:
$url="https://new.aol.com/productsweb/subflows/ScreenNameFlow/AjaxSNAction.do?s=username&f=firstname&l=lastname";
$agent= 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)';

$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERAGENT, $agent);
curl_setopt($ch, CURLOPT_URL,$url);
$result=curl_exec($ch);
var_dump($result);
y me funcionó sin problemas.

Saludos, espero le sirva a otros.
__________________
http://chicho.ninja yiaaaa
  #4 (permalink)  
Antiguo 19/11/2013, 09:12
Avatar de quinqui  
Fecha de Ingreso: agosto-2004
Ubicación: Chile!
Mensajes: 776
Antigüedad: 19 años, 8 meses
Puntos: 56
Respuesta: problema con file get contents

Wow! Qué bueno! No olvides cambiar el título a Solucionado entonces :D
Por cierto, precisamente en la documentación hablaban de restricciones que coloca el IIS, así que por allí iba la cosa entonces...
Saludos!
__________________
pipus.... vieeeeeji plomius!!!
*quinqui site*

Etiquetas: file
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:37.