Ver Mensaje Individual
  #8 (permalink)  
Antiguo 20/04/2011, 11:52
yooom
(Desactivado)
 
Fecha de Ingreso: enero-2011
Mensajes: 293
Antigüedad: 13 años, 3 meses
Puntos: 4
Respuesta: Uso de CURL para autentificarse en servidor ISS

La manera correcta de extraer el contenido es de esta forma :

Código PHP:
/*Trabaja en local  no funciona si tiene desabilitado por el servidor allow_url_fopen*/
         
if (file_get_contents($url)){
        echo 
"<p>existe</p>";
        echo 
file_get_contents($url);
         }else{
        echo 
" <p>no existe</p>";
         } 


MEtedo con session Ccurl a otra url :
/*No recomendado desabilitar allow_url_fopen sino seras un festin para los programdores de codigo seguro*/
Código PHP:


// Crear un nuevo recurso cURL  
$ch curl_init();  

// Configurar URL y otras opciones apropiadas  
curl_setopt($chCURLOPT_URL"http://www.url.com/");  //Identificamos la url de destino Ccurl
curl_setopt($chCURLOPT_HEADERFALSE); //curl header es igual a false por tanto nose muestra 
curl_setopt($ch,CURLOPT_RETURNTRANSFER,TRUE);  //debuelve la conexion cCurl para mostrar o extra contenido


$destino =  curl_exec($ch);  

if (
curl_exec($ch)!== FALSE

   echo 
"<p>Si  existe</p>"
echo 
$destino;

else 

   echo 
" <p>no existe</p>"


// Cerrar el recurso cURL y liberar recursos del sistema  
curl_close($ch); 

Espero te sirva.



//esto sera mejor que me lo expliques nose que pretendes con eso
Cita:
curl_setopt($curl,CURLOPT_USERPWD,$user . ":" . $password);
curl_setopt($curl,CURLOPT_FOLLOWLOCATION, true);
//esto nose por que lo pones diciendo el navegador

Cita:
curl_setopt($curl,CURLOPT_USERAGENT,"Mozilla/4.0");

// y todo esto no dices que el heade no lo itulizas?

Cita:
$header[] = "HTTP/1.1 401 Unauthorized";
$header[] = "Connection: Close";
$header[] = "Date: Wed, 20 Apr 2011 16:06:23 GMT";
$header[] = "Content-Length: 1656";
$header[] = "Content-Type: text/html";
$header[] = "Server: Microsoft-IIS/6.0";
$header[] = "WWW-Authenticate: Negotiate";
$header[] = "WWW-Authenticate: NTLM";
$header[] = "X-Powered-By: ASP.NET";