Nginx 图片防盗链

在server中配置以下:html

location ~* b(?!logob)w+.(gif|jpg|png|swf|flv)$ {
      valid_referers none blocked  www.100msh.com www.100msh.net;
      if ($invalid_referer) {
          rewrite ^/ http://www.100msh.com/images/logo.png;
      }
 
      root html;
}

说明:正则表达式

Location 指令:是用来为匹配的 URI 进行配置,URI 即语法中的”/uri/”,能够是字符串或正则表达式。但若是要使用正则表达式,则必须指定前缀。shell

[=] 表示精确匹配,若是找到,当即中止搜索并当即处理此请求。
.net

[~ ] 表示区分大小写匹配code

[~*] 表示不区分大小写匹配server

[^~] 表示只匹配字符串,不查询正则表达式。htm

[@] 指定一个命名的location,通常只用于内部重定向请求。图片


1行:gif|jpg|png|swf|flv        表示对gif、jpg、png、swf、flv后缀的文件实行防盗链,可是不包括logo命名的图片字符串

2行:www.100msh.com www.100msh.net    表示对www.100msh.com www.100msh.net这2个来路进行判断get

if{}里面内容的意思是,若是来路不是指定来路就跳转到错误页面.

相关文章
相关标签/搜索