昨天早上打网站,发现所有的 Gravatar 头像都不显示了,本来以为是我的网速问题,暂时就没管它。今天早上起来再看,仍然是不能显示头像,看看头像地址均是0.gravatar.com,而www开头的gravatar却能访问,因此肯定是0开头的分流服务器被墙了。
在网上搜索了一番,发现相关代码在 /wp-includes/pluggable.php 这个文件里面,打开这个文件后,查找 “gravatar.com”,找到如下代码片段:
if ( is_ssl() ) { $host = ‘https://secure.gravatar.com’; } else { if ( !empty($email) ) $host = sprintf( “http://%d.gravatar.com”, ( hexdec( $email_hash{0} ) % 2 ) ); else $host = ‘http://0.gravatar.com’; }
看来 Gravatar 通过随机数字的方式对服务进行了分流,而某些分流服务器的IP地址可能已经被墙,所以把地址直接都改成 www 服务器应该可以的。
if ( is_ssl() ) { $host = ‘https://secure.gravatar.com’; } else { $host = ‘http://www.gravatar.com’; }
保存修改后刷新页面,头像全部显示 。
PS:此番修改只针对于wordpress3.0以后版本,以前的 WordPress 2.92 都是采用的 www 服务器,没有分流机制,所以如果你的 WordPress 是 2.92 或者更早的版本,应该不用修改。
我按照以上的方式修改了一下果然可以了。
原文来自:http://www.diyiyan.com/article/soft/2010-10-17/19074.html
原创文章,转载请注明: 转载自what is the RIA? just it…||咖啡兔
本文链接地址: wordpress头像不显示Gravatar被墙
















哇,又有评论了,有你吗?