¿Cómo puedo obtener un encabezado de ubicación de URL de redirección 302 en PHP?

StackOverflow https://stackoverflow.com/questions/2633851

  •  26-09-2019
  •  | 
  •  

Pregunta

Estoy tratando de encontrar una forma universal de expandir la mayoría, si no todas, las URL acortadas. Sé que las URL cortas como bit.ly, tinyurl, goo.gl, etc. usan el método de redirección 302 para redirigirlo a otro sitio. ¿Cómo puedo hacer una solicitud de cabeza a la URL acortada en PHP y obtener la parte de "ubicación" del encabezado?

Por favor, ayúdame con esto.

Gracias

¿Fue útil?

Solución

Olvídalo a todos. :) Con algo de búsqueda en Internet, encontré esto:

expandir la URL corta a URL original usando PHP y Curl - Hasin Hayder

Me muestra exactamente cómo hacer esto.

Otros consejos

Necesitas usar curl. Puede establecer una función de devolución de llamada que se dispara para leer encabezados.

//register a callback function which will process the headers
 curl_setopt($ch, CURLOPT_HEADERFUNCTION, 'readHeader');


function readHeader($ch, $header)
{ 
    global $location;

    // we have to follow 302s automatically or cookies get lost.
    if (eregi("Location:",$header) )
    {
        $location= substr($header,strlen("Location: "));
    }

    return strlen($header);
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top