Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2809598
  • 博文数量: 587
  • 博客积分: 6356
  • 博客等级: 准将
  • 技术积分: 6410
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-23 10:54
个人简介

器量大者,福泽必厚

文章分类

全部博文(587)

文章存档

2019年(3)

2018年(1)

2017年(29)

2016年(39)

2015年(66)

2014年(117)

2013年(136)

2012年(58)

2011年(34)

2010年(50)

2009年(38)

2008年(16)

分类: LINUX

2014-09-26 15:41:21

转之:

#####################经测试,确实有效,向作者表示感谢


因为nginx不支持.htaccess,所以在防盗链上比较麻烦。上网搜了一下,代码很容易搜到,甚至的作者Licess都给出了,但是还是有很多人叫着方法无效,这是为什么呢?

Licess给出的代码如下:

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
          {
                  valid_referers none blocked zhukun.net *.zhukun.net *.youdao.com *.zhuaxia.com *.xianguo.com *.google.cn *.google.com *.google.com.tw *.google.com.sg *.google.com.hk *.bloglines.com image.soso.com cn.bing.com image.baidu.com *.feedburner.com *.feedsky.com;
                  if ($invalid_referer) {
                  rewrite ^/ http://image161.poco.cn/mypoco/myphoto/20100506/20/124649620100506204112026.jpg;
                  #return 404;
                  }
          }

把这段代码加入到/usr/local/nginx/conf/nginx.conf的server段里,然后执行如下命令重启lnmp:
/root/lnmp restart

很多人在测试了这个方法以后,发现没有效果,这是为什么呢?原因在于上面这段代码跟另一段代码产生了冲突。同样是修改/usr/local/nginx/conf/nginx.conf文件,把其中的下面这段代码删除:

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires      30d;
    }

删除以后,再次重启lnmp,你会发现,防盗链设置已经生效了。

也可以将两者组合,形成一段新的代码:

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
          {
                  expires      30d;
                  valid_referers none blocked *.zhukun.net *.youdao.com *.zhuaxia.com *.xianguo.com *.google.cn *.google.com *.google.com.tw *.google.com.sg *.google.com.hk *.bloglines.com image.soso.com cn.bing.com image.baidu.com *.feedburner.com *.feedsky.com;
                  if ($invalid_referer) {
                  rewrite ^/ http://image161.poco.cn/mypoco/myphoto/20100506/20/124649620100506204112026.jpg;
                  #return 404;
                  }
          }
阅读(1091) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~