Преди ползвах простия метод за съкращаване на URL, чрез http://is.gd или с PHP изпълнено изглежда така:
$short_url=file_get_contents("http://is.gd/api.php?longurl=".$post_url);
Но забелязах, че във facebook този редирект (is.gd) е репортнат от потребителите за извършени злоутпореби и заради това Facebook не позволяват тези линкове(т.е. позволяват да се добавят в постовете, но не можеш да ги отвориш). За целта реших да премина на друг редиректор които да си работи(btw: този is.gd работи в twitter и edno23, но не и във facebook).
Преминах към http://bit.ly . Направих си регистрация (прави се за секунда) и понеже ше правя ключове от PHP си взех APP ключа от ТУК . След това още от първия сърч видях, че има написана проста функция за съкращане на урл, чрез bit.ly . Ето я и функцията:
function make_bitly_url($url,$login,$appkey,$format = 'xml',$version = '2.0.1')
{
//create the URL
$bitly = 'http://api.bit.ly/shorten?version='.$version.'&longUrl='.urlencode($url).'&login='.$login.'&apiKey='.$appkey.'&format='.$format;//get the url
//could also use cURL here
$response = file_get_contents($bitly);//parse depending on desired format
if(strtolower($format) == 'json')
{
$json = @json_decode($response,true);
return $json['results'][$url]['shortUrl'];
}
else //xml
{
$xml = simplexml_load_string($response);
return 'http://bit.ly/'.$xml->results->nodeKeyVal->hash;
}
}//End of function make_bitly_url($url,$login,$appkey,$format = 'xml',$version = '2.0.1')/* usage */
//$short = make_bitly_url("УРЛ_което_ще_се_съклращава","Потребителско_име","APP ключ","json");
//Примерни реални данни
//$short = make_bitly_url("http://nishto.net","mpetrov_net","R_123ghh7b0db18a42ab1e050e13461551","json");
//echo 'The short URL is: '.$short;
Хубав ден :)
php функция за съкращаване на url,
Искам само да допълня, че с API-то на bit.ly може да се използва и другия им домейн -- j.mp
Здрасти Март. Виж това може да ти е интересно,
http://www.pc-freak.net/blog/disable-apache-http-trace-method-to-improve-apache-security/