txt servidor desde descargar archivos archivo ajeno php redirect curl server

servidor - php descargar archivo



Descargue un archivo con cURL (1)

Pruebe con este código

$url = "www.abc.com/xyz";//your url will come here $fp = fopen (''test.txt'', ''w+''); $ch = curl_init(str_replace(" ","%20",$url)); curl_setopt($ch, CURLOPT_TIMEOUT, 100); curl_setopt($ch, CURLOPT_FILE, $fp); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_exec($ch); curl_close($ch); fclose($fp);

Estoy tratando de descargar un archivo con cURL. Recibí una URL donde se encuentra el archivo, pero la URL hace una redirección antes de llegar al archivo. Por algún motivo, siempre recibo la página de cierre de sesión cuando accedo a la URL con cURL, pero cuando ingreso la URL directamente en mi navegador el archivo simplemente descarga como se supone que debe. El archivo que debe descargarse es un archivo RAR, pero en lugar del archivo, obtengo la página de inicio de sesión incorrecta.

Este es el código actual:

$ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "url"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, true); curl_setopt($ch, CURLOPT_BINARYTRANSFER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); $result = curl_exec($ch); curl_close($ch); print_r($result);

Como puede ver, estoy usando el siguiente código para permitir los redireccionamientos:

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

Pero siempre recibo la página de inicio de sesión incorrecta desde el sitio web si uso el código anterior. ¿Alguien puede ver lo que estoy haciendo mal aquí?

Esta es la respuesta que recibo del servidor:

HTTP/1.1 302 Found Date: Tue, 26 Jan 2016 15:33:18 GMT Server: Apache/2.2.3 (Red Hat) X-Powered-By: PHP/5.3.2 Set-Cookie: PHPSESSID=session_id; path=/ Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Location: /nl/nl/export/download/t/Mg==/c/MTQ=/ Vary: Accept-Encoding Content-Length: 0 Content-Type: text/html; charset=UTF-8