Сократить URL «bit.ly» ссылка не отображается в браузере

Я создал ссылку bit.ly, используя следующий код

 function make_bitly_url($url,$format = 'xml',$version = '2.0.1')
{

$login="urlogin";
$appkey="ur_api_key";

$bitly = 'http://api.bit.ly/shorten?version='.$version.'&longUrl='.urlencode($url).'&login='.$login.'&apiKey='.$appkey.'&format='.$format;
$response = file_get_contents($bitly);

$xml = simplexml_load_string($response);

return $response;

}

Я получаю ответ успешно, как укороченный URL, но при нажатии на него будет отображаться оригинальный URL в браузере в адресной строке URL

1

Решение

Как упомянуто в комментариях GolezTrol, цель ссылок Bitly — предоставить короткий URL, который регистрирует трафик кликов и перенаправляет пользователей на желаемые длинные URL-адреса. Битовые ссылки не маскируют длинные URL-адреса, на которые они указывают.

Это в сочетании с коротким временем, необходимым для перенаправления (обычно < 200 мс) означает, что вы обычно не видите Bitly URL в адресной строке браузера.

1

Другие решения

увидеть https://stackoverflow.com/a/41680608/7426396

Я реализовал, чтобы получить каждую строку простого текстового файла с одним сокращенным URL на строку, соответствующим URL перенаправления:

<?php
// input: textfile with one bitly shortened url per line
$plain_urls = file_get_contents('in.txt');
$bitly_urls = explode("\r\n", $plain_urls);

// output: where should we write
$w_out = fopen("out.csv", "a+") or die("Unable to open file!");

foreach($bitly_urls as $bitly_url) {
$c = curl_init($bitly_url);
curl_setopt($c, CURLOPT_USERAGENT, 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36');
curl_setopt($c, CURLOPT_FOLLOWLOCATION, 0);
curl_setopt($c, CURLOPT_HEADER, 1);
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_CONNECTTIMEOUT, 20);
// curl_setopt($c, CURLOPT_PROXY, 'localhost:9150');
// curl_setopt($c, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
$r = curl_exec($c);

// get the redirect url:
$redirect_url = curl_getinfo($c)['redirect_url'];

// write output as csv
$out = '"'.$bitly_url.'";"'.$redirect_url.'"'."\n";
fwrite($w_out, $out);
}
fclose($w_out);

Веселись и наслаждайся!
PW

0