设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 数据 手机
当前位置: 首页 > 教程 > 正文

解决Gravatar头像Googlefonts和Googleajax无法使用的方法

发布时间:2022-06-24 10:40 所属栏目:61 来源:互联网
导读:因为国内google打不开了所以导致像国外的Gravatar头像、Google fonts和Google ajax这些接口都不能使用了,下文我们就一起来看解决办法. Gravatar头像现在大陆地区偶尔无法访问,还有各种google服务也用不了,对于一枚程序员来说是不能容忍的,于是麦葱弄了个解决
  因为国内google打不开了所以导致像国外的Gravatar头像、Google fonts和Google ajax这些接口都不能使用了,下文我们就一起来看解决办法.
 
  Gravatar头像现在大陆地区偶尔无法访问,还有各种google服务也用不了,对于“一枚程序员”来说是不能容忍的,于是麦葱弄了个解决之法——使用nginx反向代理Gravatar头像、Google fonts和Google ajax.
 
  反代之前需要确定nginx已经安装了proxy_cache模块并配置好路径及参数.
 
  下面是麦葱在nginx.conf中配置的代码:
 
  http
  {
      #其他代码...#
      proxy_connect_timeout 5;
      proxy_read_timeout 60;
      proxy_send_timeout 5;
      proxy_buffer_size 16k;
      proxy_buffers 4 64k;
      proxy_busy_buffers_size 128k;
      proxy_temp_file_write_size 128k;
      proxy_temp_path /tmp/nginx_proxy_temp 1 2;  #临时文件目录
      #其他代码...#
  }
  然后是单独的配置文件gravatar.conf,带#的需要你进行相应修改:
 
  proxy_cache_path  /tmp/nginx_proxy_cache/gravatar levels=1:2 keys_zone=GRAVATAR:32m inactive=7d max_size=1g; #缓存路径
  server {
      listen 80;
      server_name gravatar.yuxiaoxi.com; #绑定的域名
      location  / {
          proxy_cache GRAVATAR;
          proxy_cache_key "$scheme://$host$request_uri";
          proxy_cache_valid 200 304 7d;
          proxy_cache_valid 301 3d;
          proxy_cache_valid any 10s;
          proxy_pass http://0.gravatar.com; #反代的域名
          proxy_pass_header Server;
          proxy_redirect off;
          proxy_set_header Host 0.gravatar.com;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Scheme $scheme;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
      location ~ /purge(/.*) {
          allow 127.0.0.1;
          deny all;
 
  BYMT主题用户修改办法:
 
  1、打开/wp-content/themes/BYMT/目录下的functions.php文件
 
  2、搜索bymt_get_avatar,将gravatar.duoshuo.com替换为gravatar.phpfensi.com
 
  3、搜索bymt_avatar,从//获取头像及缓存开始,到//分页功能上一行,替换为:
 
  // 通过curl获取内容
  function bymt_curl_contents($url){
      $ch = curl_init();
      curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
      curl_setopt($ch, CURLOPT_URL, $url);
      $response =  curl_exec($ch);
      curl_close($ch);
      /** 请求为空 **/
      if(emptyempty($response)){
          $response = '';
      }
      return $response;
  }
  // 写文件
  function bymt_write_file($path, $data, $mode = 'wb') {
      if ( ! $fp = @fopen($path, $mode)) {
          return false;
      }
      flock($fp, LOCK_EX);
      fwrite($fp, $data);
      flock($fp, LOCK_UN);
      fclose($fp);
      return true;
 
  4、打开/wp-includes/script-loader.php,搜索ajax.googleapis.com替换为ajax.yuxiaoxi.com,搜索 fonts.gstatic.com替换为fonts.phpfensi.com;
 
  搞定收工.
 
 

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读