【问题标题】:Bit.ly API call hitting original URL before/after creating short urlBit.ly API 调用在创建短 url 之前/之后命中原始 URL
【发布时间】:2019-06-14 07:11:54
【问题描述】:

我正在使用 v3 api 生成 Bit.ly 短网址。 在原始 URL 中,我在点击它后有一些数据库操作。但是当我生成 bit.ly url 时,它会自动点击原始 URL。

检查我下面的 bit.ly api 调用代码。

$url = 'http://api.bit.ly/v3/shorten?login='.BITLYAPICALLLOGIN.'&apiKey='.BITLYAPICALLAPIKEY.'&uri='.urlencode($longurl).'&format=json';

$s = curl_init();  
curl_setopt($s,CURLOPT_URL, $url);  
curl_setopt($s,CURLOPT_HEADER,false);  
curl_setopt($s,CURLOPT_RETURNTRANSFER,1); 
curl_setopt($s,CURLOPT_CONNECTTIMEOUT,2); 
$result = curl_exec($s);  
curl_close( $s );

我们可以避免来自 bit.ly 的自动 URL 调用吗?

【问题讨论】:

  • 1.可能不是,bit.ly 可能想要检查 URL 是否可访问,以便他们可以返回适当的错误消息,否则,2. 为什么?
  • 我们可以避免 bit.ly 调用原始网址吗?
  • 问bitly support是否存在?
  • 仅供参考,如果您将链接发布到 Twitter(数十个机器人会立即访问它)、Facebook(他们会获取 OG 标签并检查它是否有垃圾邮件),同样的事情也会发生,发送通过电子邮件(各种垃圾邮件过滤器可能会访问该链接)等。您可能需要完全重新考虑 DB 操作。

标签: php curl bit.ly


【解决方案1】:

Bitly 确实会获取 Bitlink 的长 URL 以检索页面标题和相关信息。我们的请求尊重 robots.txt 标准 (http://www.robotstxt.org)。

如果您希望我们的系统停止发出这些请求,您可以通过更新相应域中的 robots.txt 文件来实现。请注意,我们会将网站的 robots.txt 缓存 24 小时,因此更改需要一天才能生效。

禁用此行为的 robots.txt 节是:

User-agent: bitlybot
Disallow: /

我还建议更新到我们的 API 的 V4,因为它是最新最好的:https://dev.bitly.com

【讨论】:

    【解决方案2】:

    我没有添加/编辑 robots.txt 的权限, 而是我在代码中提出了解决方案(用 PHP 编写)。 在文件顶部添加以下代码 sn -p 只是为了阻止 bitlybot 进行任何操作。

    if (strpos($_SERVER['HTTP_USER_AGENT'], 'bitlybot') !== false) {
        header('Location: https://bit.ly/', true, 301);
        exit();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-20
      • 2012-02-14
      • 2012-06-22
      • 1970-01-01
      • 1970-01-01
      • 2012-01-09
      • 1970-01-01
      • 2011-09-27
      相关资源
      最近更新 更多