with rewriterule htaccess example ejemplos domain another php redirect url-rewriting url-redirection

rewriterule - php get url de redirigir desde la URL de origen



htaccess redirect with parameters (2)

Puede obtener la URL final de una solicitud con curl_getinfo .

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_exec($ch); $url = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);

Tengo este enlace:

http://libero-news.it.feedsportal.com/c/34068/f/618095/s/2e34796f/l/0L0Sliberoquotidiano0Bit0Cnews0C12735670CI0Esaggi0Eper0Ele0Eriforme0Ecostituzionali0EChiaccherano0Ee0Eascoltano0Bhtml/story01.htm

Si lo visitas, esto se convierte en:

http://www.liberoquotidiano.it/news/1273567/I-saggi-per-le-riforme-costituzionali-Chiaccherano-e-ascoltano.html

¿Cómo puedo obtener el segundo enlace del primero?

Lo intenté pero no funcionó, devolviéndome el mismo primer enlace:

<?php $url="http://libero-news.it.feedsportal.com/c/34068/f/618095/s/2e34796f/l/0L0Sliberoquotidiano0Bit0Cnews0C12735670CI0Esaggi0Eper0Ele0Eriforme0Ecostituzionali0EChiaccherano0Ee0Eascoltano0Bhtml/story01.htm"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); $a = curl_exec($ch); print_r($a);echo"<br>"; if(preg_match(''#Location: (.*)#'', $a, $r)){ $l = trim($r[1]); echo $l; }else echo "not working"; ?>

Muchas gracias.


Gracias a @ king-isaac se probó el siguiente código y funciona.

<?php $url="http://libero-news.it.feedsportal.com/c/34068/f/618095/s/2e34796f/l/0L0Sliberoquotidiano0Bit0Cnews0C12735670CI0Esaggi0Eper0Ele0Eriforme0Ecostituzionali0EChiaccherano0Ee0Eascoltano0Bhtml/story01.htm"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); // Must be set to true so that PHP follows any "Location:" header curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $a = curl_exec($ch); // $a will contain all headers $url = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL); // This is what you need, it will return you the last effective URL // Uncomment to see all headers /* echo "<pre>"; print_r($a);echo"<br>"; echo "</pre>"; */ echo $url; // Voila ?>