curl_init php curl http-headers

curl_init - php curl post json



php, curl, encabezados y tipo de contenido (1)

Tengo problemas para trabajar con curl y encabezados devueltos por los servidores.

1) Mi archivo php en my_website.com/index.php se ve así (versión recortada):

<?php $url = ''http://my_content_server.com/index.php''; //Open connection $ch = curl_init(); curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //execute post $result = curl_exec($ch); //close connection curl_close($ch); echo $result; ?>

El archivo php en my_content_server.com/index.php se ve así:

<?php header("HTTP/1.0 404 Not Found - Archive Empty"); echo "Some content > 600 words to make chrome/IE happy......"; ?>

Espero que cuando visite my_website.com/index.php, debería obtener un 404, pero eso no está sucediendo.

¿Qué estoy haciendo mal?

2) Básicamente lo que quiero lograr es:

my_content_server.com/index.php decidirá el tipo de contenido y enviará los encabezados apropiados, y my_website.com/index.php solo debe enviar el mismo tipo de contenido y otros encabezados (junto con los datos reales) al navegador. Pero parece que my_website.com/index.php está escribiendo sus propios encabezados? (O tal vez no entiendo el funcionamiento correcto).

saludos, JP


Insertar antes de curl_exec() :

curl_setopt($ch,CURLOPT_HEADER,true);

En lugar de solo echo el resultado, envíe los encabezados al cliente también:

list($headers,$content) = explode("/r/n/r/n",$result,2); foreach (explode("/r/n",$headers) as $hdr) header($hdr); echo $content;