WordPress会将你的博客数据发送到WordPress.org或Automattic吗?

时间:2012-09-04 作者:Roman

我最近听到有人说WordPress确实会将你博客的数据发送回国内。这是真的吗?如果是的话,那是什么数据,或者在代码中的什么地方可以看到交换的数据?

3 个回复
最合适的回答,由SO网友:fuxia 整理而成

是的,是的。看见Ticket #16778 wordpress is leaking user/blog information during wp_version_check(). 所有详细信息都在/wp-includes/update.php:

if ( is_multisite( ) ) {
    $user_count = get_user_count( );
    $num_blogs = get_blog_count( );
    $wp_install = network_site_url( );
    $multisite_enabled = 1;
} else {
    $user_count = count_users( );
    $user_count = $user_count[\'total_users\'];
    $multisite_enabled = 0;
    $num_blogs = 1;
    $wp_install = home_url( \'/\' );
}

$query = array(
    \'version\'           => $wp_version,
    \'php\'               => $php_version,
    \'locale\'            => $locale,
    \'mysql\'             => $mysql_version,
    \'local_package\'     => isset( $wp_local_package ) ? $wp_local_package : \'\',
    \'blogs\'             => $num_blogs,
    \'users\'             => $user_count,
    \'multisite_enabled\' => $multisite_enabled
);

$url = \'http://api.wordpress.org/core/version-check/1.6/?\' . http_build_query( $query, null, \'&\' );

$options = array(
    \'timeout\' => ( ( defined(\'DOING_CRON\') && DOING_CRON ) ? 30 : 3 ),
    \'user-agent\' => \'WordPress/\' . $wp_version . \'; \' . home_url( \'/\' ),
    \'headers\' => array(
        \'wp_install\' => $wp_install,
        \'wp_blog\' => home_url( \'/\' )
    )
);

$response = wp_remote_get($url, $options);
用户代理包含安装的URL,因此所有这些数据不再是匿名的。获取一些隐私返回过滤器\'http_request_args\' 并更改您不想泄漏的数据。

下面是一个匿名化UA字符串的简单示例(来自recent blog article):

add_filter( \'http_request_args\', \'t5_anonymize_ua_string\' );

/**
 * Replace the UA string.
 *
 * @param  array $args Request arguments
 * @return array
 */
function t5_anonymize_ua_string( $args )
{
    global $wp_version;
    $args[\'user-agent\'] = \'WordPress/\' . $wp_version;

    // catch data set by wp_version_check()
    if ( isset ( $args[\'headers\'][\'wp_install\'] ) )
    {
        $args[\'headers\'][\'wp_install\'] = \'http://example.com\';
        $args[\'headers\'][\'wp_blog\']    = \'http://example.com\';
    }
    return $args;
}
您可以将其更改为…

add_filter( \'http_request_args\', \'t5_anonymize_ua_string\', 10, 2 );
…并获取请求URL作为回调的第二个参数。现在可以检查URL是否包含http://api.wordpress.org/core/version-check/ 然后根据需要更改所有值,取消请求并发送新的请求。仍然没有办法只更改URL,这就是为什么我在票证中创建了补丁。

SO网友:Brian Fegter

WordPress将版本数据发送回。使用时组织。据我所知,组织API(安装/搜索/更新)。然后将这些数据整理成图表。您可以查看数据here. 我假设在绘制环境需求路线图(即PHP4>PHP5、MySQL版本支持等)时也会用到这一点。

这是一个什么样的例子。组织统计数据如下所示:

enter image description here

作为补充说明,安装来自可靠来源的插件总是必不可少的。Otto和插件目录的其他策展人在剔除使用base64+eval将个人信息发送回无耻插件作者的插件方面做得很好。我可以保证存储库中每周都会弹出一些。这适用于之外的主题。组织回购。

我听说过要创建插件审查团队(类似于主题审查团队),以确保将来存储库的完整性。您可以加入wp黑客邮件列表get more information there. 这就是这些类型的讨论真正充实的地方。

SO网友:Sarath

是的,你是对的。wordpress更新检查器、插件更新检查器和主题更新检查器定期发送有关

如果有一个插件标题、说明、作者(包括构成此插件的所有URL),请设置您的IP博客URL WordPress版本到api。wordpress。组织网站。这是自2007年以来的老话题。你可以在我的帖子中了解更多WordPress phone home - Spyware or Justified 邮递

结束

相关推荐

Format HTTP links

我有一个自定义页面模板,可以在以下位置的WP页面上创建xml提要:http://example.com/xml/我试图通过Google Maps访问此xml文档,但似乎我需要实际的文件名,例如。com/xml/example。xml如何添加。链接末尾的xml文件扩展名http://example.com/xml/ ?EDIT:我在主题中使用一个页面模板来显示XML的输出。XML部分可能与此无关。归根结底,我想应该是如何从页面模板(如/example)中指定特定的文件扩展名。xml