4.46 访问控制(限制use-agent)
如果~后边加*号表示不区分大小写(会增加服务器负载)
4.47 访问控制(限制$request-uri)
关于request-uri:
document-uri+$args=request-uri
限制$request-uri
if ($request_uri ~ (abc|123))
{
return 403;
}
地址栏内出现括号的内容会返回403表示被拒绝。
4.48反向代理
什么叫反向代理?
场景举例:
A(用户)
B(在和C同一个机房,并且有公网)
C(不带公网的机器)
A用户通过B服务器的代理去访问C服务器的资源,这个过程叫反向代理。
什么场景会使用反向代理?
1)访问不带公网的内网机器
2)解决两台机器之间通信有障碍的问题
场景设置:
1)A B 两台机器,其中A只有内网,B有内网和外网
2)A的内网ip是 192.168.222.128
3)B的内网ip是 192.168.222.129
4)B的外网IP是 192.168.149.128(外网IP不使用C类网段,这里实验用)
5)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;
}
1,这个配置是写在B机器的虚拟服务器配置文件里的。
2,http://ip 是A机器的IP