Nginx的Rewrite规则编写

简介: 昨天为单位的Ngnix服务器配置了一个Rewrite规则,以防止符合特定规则的图片被盗链。同时,还有一个需求就是,从我们的管理站点来的请求应该可以访问这些图片。查了一些资料,最后总结如下: location ~ .

昨天为单位的Ngnix服务器配置了一个Rewrite规则,以防止符合特定规则的图片被盗链。同时,还有一个需求就是,从我们的管理站点来的请求应该可以访问这些图片。查了一些资料,最后总结如下:

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
        valid_referers server_names admin.xxx.com.cn;
        if ($invalid_referer) {
                rewrite "^/folderpath1/([a-z0-9]{2})/([a-z0-9]{2})/([0-9a-z]*)\.([a-z0-9]{3})" /403.html last;
                rewrite "^/folerpath2/([a-z0-9]{2})/([a-z0-9]{2})/([0-9a-z]*)\.([a-z0-9]{3})" /403.html last;
        }

        expires      365d;
}

在解决这个问题的过程中,找了一些资料,在解决 valid_referers 这个配置的时候,按照网上的一些文章,总是不能够生效。后来看了官方的资料后,才知道要加上 server_names 这个参数。

image

由此可见,网上的很多资料都没有经过博主的验证,大家只是简单的转载。希望今后能够有更多的经过验证的,负责任的文章出现网络上,而不是简单的转载。

当然,这里写的这个规则只能是简单的做一些盗链的防范。想要更深入的防止盗链现象的发生,还有很多的工作可以做,这里并没有深入下去。

Technorati 标签: ngnix, linux, rewrite, 防盗链

参考资料:
1、Ngnix的Rewrite配置
2、Ngnix防盗链
3、Ngnix Wiki
4、检测Ngnix配置是否正确

相关文章
|
6月前
|
自然语言处理 前端开发 应用服务中间件
nginx的Location语法规则
nginx的Location语法规则
|
应用服务中间件 nginx Perl
Nginx系列教程(09) - rewrite
Nginx系列教程(09) - rewrite
131 0
|
应用服务中间件 nginx
Nginx rewrite(URL)地址重定向
Nginx rewrite(URL)地址重定向
591 0
|
3月前
|
搜索推荐 Java 应用服务中间件
Nginx Rewrite 规则
【8月更文挑战第21天】Nginx Rewrite 规则
35 2
|
4月前
|
应用服务中间件 网络安全 nginx
Nginx简易防CC策略规则
Nginx简易防CC策略规则
55 1
|
5月前
|
应用服务中间件 Apache nginx
apache、nginx开启rewrite重写服务及伪静态
apache、nginx开启rewrite重写服务及伪静态
293 4
|
6月前
|
应用服务中间件 网络安全 nginx
nginx(1.13.7)首次安装出现:【make: *** 没有规则可以创建“default”需要的目标“build” 问题】解决措施
nginx(1.13.7)首次安装出现:【make: *** 没有规则可以创建“default”需要的目标“build” 问题】解决措施
599 0
|
应用服务中间件 nginx 数据安全/隐私保护
安装Nginx报错:make: *** 没有规则可以创建“default”需要的目标“build”。 停止。
安装Nginx报错:make: *** 没有规则可以创建“default”需要的目标“build”。 停止。
452 0
|
6月前
|
Kubernetes 应用服务中间件 网络安全
kubernetes中Ingress Nginx 常用规则使用
kubernetes中Ingress Nginx 常用规则使用
70 0
|
6月前
|
应用服务中间件 nginx
百度搜索:蓝易云【Nginx【Nginx核心指令(rewrite指令、实战rewrite 、if指令、set和break指令】】
这些核心指令在Nginx的配置文件中发挥重要作用。使用rewrite指令可以实现URL的重写和重定向,if指令可以根据条件执行不同的操作,set指令可以创建自定义变量并设置其值,而break指令可以中断请求处理流程。理解和灵活运用这些指令,可以帮助我们更好地配置和管理Nginx服务器。
92 1