4.4.1 静态文件过期缓存
在nginx 配置中 添加以下配置,定义静态文件过期缓存时间;
location ~*\.(png|gif|ico|css|js|bmp|flv)$
{
expires 1m; 定义静态缓存期过期时间为一分钟,可以按 1d; 1m;定义;
access_log off;
}
定义完后重启nginx;
使用 curl 工具 curl -x 127.0.0.1:80 -I http://192.168.3.100/static/image/common/logo_88_31.gif
查看返回状态;
HTTP/1.1 200 OK
Server: nginx/1.14.2
Date: Sun, 10 Feb 2019 15:18:07 GMT
Content-Type: image/gif
Content-Length: 2528
Last-Modified: Sun, 03 Feb 2019 19:03:41 GMT
Connection: keep-alive
ETag: "5c573b0d-9e0"
Expires: Sun, 10 Feb 2019 15:19:07 GMT
Cache-Control: max-age=60 缓存过期时间为 60秒;
Accept-Ranges: bytes
bc命令,计算器工具,使用yum install -y bc 来安装;
4.42 -Nginx防盗链
比如A主机盗取B虚拟主机的配置文件
测试使用rz 命令先上传一个图片去blog 文件的目录 1.jpg
sz \文件名 将文件下载到本地;
修改blog 虚拟主机nginx 配置文件:
添加防盗链接字段包含以下格式的,符合域名 .*byron.cc 字段的可以访问,其他域名访问的一律跳转至403 无法访问;
location ~ \.(png|gif|css|js|bmp|mp3|mp4|flv|jpg)$
{ valid_referers none blocled server_names *.byron.cc;
if ($invalid_referer) {
return 403;
}
}
使用 curl命令 curl -x127.0.0.1:80 -I -e "http://a.byron.cc" http://blog.byron.cc/1.jpg
得出结果为状态码为200则说明, 连接正常,
使用curl命令 使用黑名单的地址http://bbs.discuz.cc, 去链接防盗链接
curl -x127.0.0.1:80 -I -e "http://bbs.discuz.cc" http://blog.byron.cc/1.jpg
得出结果为状态码为403 Forbidden则说明,防盗链接生效;
什么叫反向代理?
A(用户)--> B(在和C同一个机房,并且有公网)--> C(不带公网的机器)
什么场景会使用反向代理?
1)访问不带公网的内网机器
2)解决两台机器之间通信有障碍的问题
场景设置:
1)A B 两台机器,其中A只有内网,B有内网和外网
2)A的内网ip是 192.168.222.128
3)B的内网ip是 192.168.222.129 B的外网IP是 192.168.149.128
4)C为客户端,C只能访问B的外网IP,不能访问A或者B的内网IP
需求目的:
C要访问到A的内网上的网站
配置:
location /
{
proxy_pass http://ip;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}