Domanda

Ho visto qualcuno porre una domanda sul rilevamento se un URL reindirizza da groovy e perl ma non sono riuscito a trovare nulla su PHP.

Qualcuno sa da qualche parte che potrei trovare quel codice che lo fa?

È stato utile?

Soluzione 2

In realtà, ho trovato che funziona meglio:

    function GetURL($URL)
    {
            $ch = curl_init($URL);

            curl_setopt($ch,CURLOPT_FOLLOWLOCATION,true);


            curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);

            curl_exec($ch);

            $code = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);

            curl_close($ch);

            return $code;
    }

Altri suggerimenti

$ch = curl_init('http://www.yahoo.com/');
curl_exec($ch);
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if (($code == 301) || ($code == 302)) {
  //This was a redirect
}

Ricorda che nessuna delle risposte che di solito vengono fornite per questa domanda tiene conto del reindirizzamento causato da javascript codificato nel documento restituito (o penso che un tag meta-refresh in HTML.) Quindi è possibile che non importa quale ti mancheranno alcuni tipi di "reindirizzamenti" durante i test con questo tipo di codice.

Sfortunatamente, l'unico modo per aggirare questo problema è far sì che un browser Web reale raggiunga la pagina Web e che il browser Web venga modificato in modo tale da segnalare reindirizzamenti javascript e meta-refresh.

Cheers!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top