文章目录[隐藏]
WordPress网站的 Gravatar 默认服务器又被墙了,网页上头像不能正常显示,可以通过 Nginx 反代实现 Gravatar 头像正常显示。反代需要有一个国外的VPS。
所谓反向就是代理服务器来接受 Internet 上的连接请求,然后将请求转发给内部(或其他)网络上的服务器,并将从服务器上得到的结果返回给Internet上请求连接的客户端。缓存就是把服务器A的资源缓存到服务器B,然后直接从服务器B读取数据。
Gravatar 头像 Nginx 反代
1、Nginx 配置
vi /usr/local/nginx/conf/nginx.conf
查找 #limit_conn_zone $binary_remote_addr zone=perip:10m;
在前面加入以下内容:
client_body_buffer_size 512k; 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 /home/cache/temp; # 配置临时目录 proxy_cache_path /home/cache/path levels=1:2 keys_zone=cache:20m inactive=30d max_size=600m; #20m是内存占用,30d是30天无访问删除,600m是缓存占具硬盘空间,cache为缓存区名字.
2、创建缓存目录,并赋予权限
mkdir /home/cache/path -p mkdir /home/cache/temp chmod 755 -R /home/cache
3、虚拟主机配置文件
vi /usr/local/nginx/conf/vhost/gravatar.inwao.com.conf
完整配置:
server{ listen 80; listen 443 ssl; server{ listen 80; listen 443 ssl; ssl_certificate /usr/ssl/gravatar.inwao.com.crt; ssl_certificate_key /usr/ssl/gravatar.inwao.com.key; ssl_session_timeout 10m; ssl_protocols TLSv1.2 TLSv1.3; #ssl_stapling on; #ssl_stapling_verify on; ssl_session_tickets on; ssl_early_data on; ssl_prefer_server_ciphers on; ssl_ciphers "TLS-CHACHA20-POLY1305-SHA256:TLS-AES-256-GCM-SHA384:TLS-AES-128-GCM-SHA256:EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+ECDSA+AES128:EECDH+aRSA+AES128:RSA+AES128:EECDH+ECDSA+AES256:EECDH+aRSA+AES256:RSA+AES256:EECDH+ECDSA+3DES:EECDH+aRSA+3DES:RSA+3DES:!MD5"; ssl_session_cache builtin:1000 shared:SSL:10m; resolver 8.8.8.8 8.8.4.4 valid=300s; resolver_timeout 5s; server_name gravatar.inwao.com; access_log /home/wwwlogs/gravatar.inwao.com.log; if ($ssl_protocol = "") { return 301 https://$host$request_uri; } if ($host != gravatar.inwao.com) { rewrite ^/(.*)$ $scheme://gravatar.inwao.com/$1 permanent; } location / { proxy_cache cache; proxy_cache_valid 200 304 7d;
未经允许不得转载:主机格调 » Nginx反代并缓存Gravatar头像,解决头像被墙