反代服务器硬件,使用 Nginx的反代功能配置gravatar头像服务器的反代节点

摘要

ravatar是wordpress默认引用的头像,很多wordpress用户发现gravatar头像被墙了,今天看了下用cn.gravatar.com/avatar/*的时候延迟又很慢,所以就自建gravatar服务器反代服务器。方法的原理是:官方的Gravatar 头像所在的路径一般都是www.gravatar.com、0.gravatar.com、1.gravatar.com、2.gravatar.com 这四个,我们只需要将头像默认的URL换成我们自己的反代服务器地址就行了。

Nginx配置

[root@Legion-JP-Linone vhost]# cat /usr/local/nginx/conf/vhost/gravatar.legion.pt.conf | grep -Ev '^(\s+)?#'

proxy_cache_path /home/wwwroot/gravatar.legion.pt/cache levels=1:2 keys_zone=gravatar:10m inactive=7d max_size=1g;

server {

listen 80;

server_name gravatar.legion.pt cngravatar.legion.pt;

access_log /home/wwwlogs/gravatar.legion.pt_nginx.log combined;

include none.conf;

if ( $query_string ~* ".*[\;'\].*" ){

return 404;

}

location ~ .*\.(wma|wmv|asf|mp3|mmf|zip|rar|jpg|gif|png|swf|flv)$ {

valid_referers none blocked *.legion.pt gravatar.legion.pt cngravatar.legion.pt;

if ($invalid_referer) {

return 403;

}

}

location avatar/ {

valid_referers none blocked *.legion.pt gravatar.legion.pt cngravatar.legion.pt;

if ($invalid_referer) {

return 403;

}

}

location / {

valid_referers none blocked *.legion.pt gravatar.legion.pt cngravatar.legion.pt *.dwhd.org;

if ($invalid_referer) {

return 403;

}

proxy_redirectoff;

proxy_passhttp://gravatar.com;

add_headerNginx-Cache"$upstream_cache_status";

proxy_connect_timeout180;

proxy_send_timeout180;

proxy_read_timeout180;

proxy_buffer_size128k;

proxy_buffers4128k;

proxy_busy_buffers_size128k;

proxy_temp_file_write_size128k;

proxy_cachegravatar;

proxy_cache_valid2003021h;

proxy_cache_valid4041m;

proxy_cache_key$uri$is_args$args;

proxy_set_headerHost$host;

proxy_set_headerAccept-Encoding"";

proxy_set_headerX-Real-IP$remote_addr;

proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;

subs_filter_typestext/css text/xmlapplication/xmlapplication/xml+rss;

subs_filter http://gravatar.com http://gravatar.legion.pt;

}

}

在wordpress主题的functions.php文件中加入

//gravatar反代

function mytheme_get_avatar($avatar) {

$avatar = str_replace(array("www.gravatar.com","0.gravatar.com","1.gravatar.com","2.gravatar.com"),"gravatar.legion.pt",$avatar);

return $avatar;

}

add_filter( 'get_avatar', 'mytheme_get_avatar', 10, 3 );

具体效果可以看本站,本站使用gravatar.legion.pt代替了gravatar官方的服务器,请勿直接使用本站的反代地址,如果需要使用请留言我给你做nginx防盗链白名单

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值