首页 > 解决方案 > 跟踪来自 LinkedIn 的访问

问题描述

我使用 LinkedIn 和其他社交媒体在我的网站上宣传某些博客内容。我的网站在 Wordpress 上,因此我编写了一个插件,该插件创建了一个用于显示访问源的小部件。获得此来源后,我可以将其存储在表格中,并可以查看来自每个社交媒体渠道的访问次数,以测试帖子的有效性。

问题是,虽然我可以毫无问题地识别来自 Facebook、Twitter、G+ 等的点击,但我没有从 LinkedIn 获得任何推荐人信息。

我使用读取信息如下:

//Get the referer from Wordpress
    $ref_raw = wp_get_raw_referer();
    echo '<li>RAW: '.( strlen($ref_raw)? $ref_raw: 'None' ).'</li>';

//Get the IP from the server to check
    $ref_srv = $_SERVER['HTTP_REFERER'];
    echo '<li>PHP: '.( strlen($ref_srv)? $ref_srv: 'None' ).'</li>';

//Get other information
    $ip = strlen($_SERVER["HTTP_X_REAL_IP"])? $_SERVER["HTTP_X_REAL_IP"]: $_SERVER['REMOTE_ADDR'];
    echo '<li>REFERRER IP: '.( strlen($ip)? $ip: 'None' ).'</li>';
    $agent = isset($_SERVER['HTTP_USER_AGENT'])&& strlen($_SERVER['HTTP_USER_AGENT'])? $_SERVER['HTTP_USER_AGENT']: '';
    echo '<li>USER AGENT: '.( strlen($agent)? $agent: 'None' ).'</li>';
    echo '<li>URI: '.$_SERVER['REQUEST_URI'].'</li>';

当访问来自 Facebook 时,此代码的输出如下:

但是,来自 LinkedIn 的访问看起来像这样:

任何想法为什么没有从 LinkedIn 传输推荐人数据?或者对我如何通过任何其他方式观察来自 LinkedIn 的访问有任何想法?

标签: phpwordpress

解决方案


您自己的网站是否使用 HTTPS?用户关注的那些链接是否使用 HTTPS URL?

如果没有,您将根本无法在现代浏览器中从 LinkedIn 获得推荐人,因为Referrer-Policy.

no-referrer-when-downgrade (默认)
如果没有指定策略,这是用户代理的默认行为。当协议安全级别保持不变(HTTP→HTTP、HTTPS→HTTPS)时,URL 会作为引荐来源网址发送,但不会发送到安全性较低的目的地(HTTPS→HTTP)。

https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy#Directives

据我所知,LinkedIn 没有主动指定推荐人策略,因此将自动使用此后备值。

因此,如果您的站点不支持 HTTPS,或者链接先转到 HTTP 版本,则浏览器将被禁止向您发送此信息。


或对如何通过任何其他方式观察来自 LinkedIn 的访问有任何想法?

检查他们是否将任何特定的、唯一命名的跟踪参数附加到传出链接,就像 Facebook 对?fbclid=I123C-as. 然后,您可以将该参数的存在作为用户最有可能点击从 LinkedIn 到您网站的链接的指标。


推荐阅读