仓酷云

标题: 来讲讲:Nginx防盗链的3种办法 [打印本页]

作者: 只想知道    时间: 2015-1-16 12:47
标题: 来讲讲:Nginx防盗链的3种办法
只要了解了Linux的基础之后,应该就可以很轻易的解决掉这方面的问题。而有些朋友们常常一接触Linux就是希望构架网站,根本没有想到要先了解一下Linux的基础。这是相当困难的。
一:一样平常的防盗链以下:
.代码以下:

location~*.(gif|jpg|png|swf|flv)${
valid_referersnoneblockedwww.ckuyun.comjb51.net;
if($invalid_referer){
rewrite^/http://www.ckuyun.com/retrun.html;
#return403;
}
}


第一行:gif|jpg|png|swf|flv
暗示对gif、jpg、png、swf、flv后缀的文件实施防盗链
第二行:暗示对www.ingnix.com这2个去路举行判别
if{}内里内容的意义是,假如去路不是指定去路就跳转到http://www.ckuyun.com/retrun.html页面,固然间接前往403也是能够的。

二:针对图片目次避免盗链
.代码以下:

location/images/{
alias/data/images/;
valid_referersnoneblockedserver_names*.xok.laxok.la;
if($invalid_referer){return403;}
}


三:利用第三方模块ngx_http_accesskey_module完成Nginx防盗链
完成办法以下:
完成办法以下:
1.下载NginxHttpAccessKeyModule模块文件:Nginx-accesskey-2.0.3.tar.gz;
2.解压此文件后,找到nginx-accesskey-2.0.3下的config文件。编纂此文件:交换个中的”$HTTP_ACCESSKEY_MODULE”为”ngx_http_accesskey_module”;
3.用一下参数从头编译nginx:
./configure--add-module=path/to/nginx-accesskey
4.修正nginx的conf文件,增加以下几行:
location/download{
accesskeyon;
accesskey_hashmethodmd5;
accesskey_arg"key";
accesskey_signature"mypass$remote_addr";
}
个中:
accesskey为模块开关;
accesskey_hashmethod为加密体例MD5大概SHA-1;
accesskey_arg为url中的关头字参数;
accesskey_signature为加密值,此处为mypass和会见IP组成的字符串。
会见测试剧本download.php:
<?
$ipkey=md5("mypass".$_SERVER[REMOTE_ADDR]);
$output_add_key="<ahref=http://www.ckuyun.com/download/G3200507120520LM.rar?key=".$ipkey.">download_add_key</a><br/>";
$output_org_url="<ahref=http://www.ckuyun.com/download/G3200507120520LM.rar>download_org_path</a><br/>";
echo$output_add_key;
echo$output_org_url;
?>
会见第一个download_add_key链接能够一般下载,第二个链接download_org_path会前往403Forbidden毛病。
参考:
NginxHttpAccessKeyModule

文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln
作者: 金色的骷髅    时间: 2015-1-24 11:26
放手去搞。尽量不要提问,运用搜索找答案,或者看wiki,从原理上理解操作系统的本质,而不是满足于使用几个技巧。尽量看英文资料。
作者: 简单生活    时间: 2015-2-1 09:48
另外Linux上也有很多的应用软件,安装运行了这些软件后,你就可以在Linux上编辑文档、图?片,玩游戏、上网、播放多媒体文件等。
作者: 爱飞    时间: 2015-2-7 03:32
任何人都可以根据自己的喜好来定制适合自己的操作系统,Linux?是抢占式多任务多用户操作系统.
作者: 海妖    时间: 2015-2-20 11:52
你需要提供精确有效的信息。Linux这并不是要求你简单的把成吨的出错代码或者数据完全转储摘录到你的提问中。
作者: 老尸    时间: 2015-3-6 17:36
首先Linux是开源的,这也是最主要的原因,想学windows,Unix,对不起我们没源代码。也正是因为这样,Linux才能够像滚雪球一样越滚越大,发展到现在这种规模。
作者: 愤怒的大鸟    时间: 2015-3-13 06:09
眼看这个学期的Linux课程已经告一段落了,我觉得有必要写一遍心得体会来总结一下这学期对着门课程的学习。
作者: 蒙在股里    时间: 2015-3-13 06:09
笔者五分钟后就给出了解决方法: “首先备份原文件到其他目录,然后删掉/usr/local/unispim/unispimsp.ksc,编辑 /usr/local/unispim/unispimsp.ini,最后重启动计算机
作者: 第二个灵魂    时间: 2015-3-20 15:07
最好先搜寻一下论坛是否有您需要的文章。这样可以获得事半功倍的效果。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2