4.41静态文件过期缓存 4.42-Nginx防盗链 4.43-4.45 访问控制1/2/3 4.48-Nginx反向代理

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;
    }

 

你可能感兴趣的:(4.41静态文件过期缓存 4.42-Nginx防盗链 4.43-4.45 访问控制1/2/3 4.48-Nginx反向代理)