昨天为单位的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 这个参数。
新闻热点
疑难解答