nginx防盜鏈

nginx防盜鏈的方法

一般邓萨,我們做好防盜鏈之后其他網(wǎng)站盜鏈的本站圖片就會全部失效無法顯示蔗蹋,但是您如果通過瀏覽器直接輸入圖片地址朋沮,仍然會顯示圖片蛇券,仍然可以右鍵圖片另存為下載文件!

依然可以下載樊拓?這樣就不是徹底的防盜了纠亚!那么,nginx應(yīng)該怎么樣徹底地實(shí)現(xiàn)真正意義上的防盜鏈呢筋夏?

首先蒂胞,我們來看下nginx如何設(shè)置防盜鏈

如果您使用的是默認(rèn)站點(diǎn),也就是說条篷,您的站點(diǎn)可以直接輸入服務(wù)器IP訪問的骗随,使用root登錄,修改 /usr/local/nginx/conf/nginx.conf 這個配置文件赴叹。

修改/usr/local/nginx/conf/vhost/你的域名.conf 這個配置文件鸿染,找到:

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$



expires      30d;

把這一段刪掉,修改成:

location ~* \.(gif|jpg|png|jpeg)$ {

 expires     30d;

 valid_referers none blocke *.hugao8.com www.hugao8.com m.hugao8.com *.baidu.com *.google.com;

if ($invalid_referer) {

rewrite ^/ http://ww4.sinaimg.cn/bmiddle/051bbed1gw1egjc4xl7srj20cm08aaa6.jpg;

#return 404;

    }

}

第一行: location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$

其中“gif|jpg|jpeg|png|bmp|swf”設(shè)置防盜鏈文件類型乞巧,自行修改涨椒,每個后綴用“|”符號分開!

第三行:valid_referers none blocked *.it300.com it300.com;

就是白名單摊欠,允許文件鏈出的域名白名單丢烘,自行修改成您的域名柱宦!*.it300.com這個指的是子域名些椒,域名與域名之間使用空格隔開!

第五行:rewrite ^/ http://www.it300.com/static/images/404.jpg;

這個圖片是盜鏈返回的圖片掸刊,也就是替換盜鏈網(wǎng)站所有盜鏈的圖片免糕。這個圖片要放在沒有設(shè)置防盜鏈的網(wǎng)站上,因?yàn)榉辣I鏈的作用,這個圖片如果也放在防盜鏈網(wǎng)站上就會被當(dāng)作防盜鏈顯示不出來了石窑,盜鏈者的網(wǎng)站所盜鏈圖片會顯示X符號牌芋。

這樣設(shè)置差不多就可以起到防盜鏈作用了,上面說了松逊,這樣并不是徹底地實(shí)現(xiàn)真正意義上的防盜鏈躺屁!

我們來看第三行:valid_referers none blocked *.it300.com it300.com;

valid_referers 里多了“none blocked”

我們把“none blocked”刪掉,改成

valid_referers *.it300.com it300.com;

nginx徹底地實(shí)現(xiàn)真正意義上的防盜鏈完整的代碼應(yīng)該是這樣的:

location ~* \.(gif|jpg|png|jpeg)$ {

expires     30d;

valid_referers *.hugao8.com www.hugao8.com m.hugao8.com *.baidu.com *.google.com;

if ($invalid_referer) {

rewrite ^/ http://ww4.sinaimg.cn/bmiddle/051bbed1gw1egjc4xl7srj20cm08aaa6.jpg;

#return 404;

    }

}

這樣您在瀏覽器直接輸入圖片地址就不會再顯示圖片出來了经宏,也不可能會再右鍵另存什么的犀暑。

第五行:rewrite ^/ http://www.it300.com/static/images/404.jpg;

這個是給圖片防盜鏈設(shè)置的防盜鏈返回圖片,如果我們是文件需要防盜鏈下載烁兰,把第五行:

rewrite ^/ http://www.it300.com/static/images/404.jpg;

改成一個鏈接耐亏,可以是您主站的鏈接,比如把第五行改成:

rewrite ^/ http://www.it300.com;

這樣沪斟,當(dāng)別人輸入文件下載地址广辰,由于防盜鏈下載的作用就會跳轉(zhuǎn)到您設(shè)置的這個鏈接!

最后主之,配置文件設(shè)置完成別忘記重啟nginx生效择吊!

一:一般的防盜鏈如下:

location ~* \.(gif|jpg|png|swf|flv)$ {

valid_referers none blocked www.jzxue.com jzxue.com ;

 if ($invalid_referer) {

rewrite ^/ http://www.jzxue.com/retrun.html;

#return 403;

 }

}

第一行:gif|jpg|png|swf|flv

表示對gif、jpg槽奕、png干发、swf、flv后綴的文件實(shí)行防盜鏈

第二行: 表示對www.ingnix.com這2個來路進(jìn)行判斷

if{}里面內(nèi)容的意思是史翘,如果來路不是指定來思是枉长,如果來路不是指定來路就跳轉(zhuǎn)到http://www.jzxue.com/retrun.html頁面,當(dāng)然直接返回403也是可以的琼讽。

二:針對圖片目錄防止盜鏈

location /images/ {

alias /data/images/;

valid_referers none blocked server_names *.xok.la xok.la ;

if ($invalid_referer) {return 403;}

}

三:使用第三方模塊ngx_http_accesskey_module實(shí)現(xiàn)Nginx防盜鏈

實(shí)現(xiàn)方法如下:

1. 下載NginxHttpAccessKeyModule模塊文件:http://wiki.nginx.org/File:Nginx-accesskey-2.0.3.tar.gz必峰;

2. 解壓此文件后,找到nginx-accesskey-2.0.3下的config文件钻蹬。編輯此文件:替換其中的”$HTTP_ACCESSKEY_MODULE”為”ngx_http_accesskey_module”吼蚁;

3. 用一下參數(shù)重新編譯nginx:

./configure --add-module=path/to/nginx-accesskey

上面需要加上原有到編譯參數(shù),然后執(zhí)行: make && make install

4. 修改nginx的conf文件问欠,添加以下幾行:



location /download {

accesskey on;

accesskey_hashmethod md5;

accesskey_arg "key";

accesskey_signature "mypass$remote_addr";

}

其中:

accesskey為模塊開關(guān)肝匆;

accesskey_hashmethod為加密方式MD5或者SHA-1;

accesskey_arg為url中的關(guān)鍵字參數(shù)顺献;

accesskey_signature為加密值旗国,此處為mypass和訪問IP構(gòu)成的字符串。

訪問測試腳本download.PHP:

<?

$ipkey= md5("mypass".$_SERVER['REMOTE_ADDR']);

$output_add_key="<a href=http://www.jzxue.com/download/G3200507120520LM.rar?key=".$ipkey.">download_add_key</a><br />";

$output_org_url="<a href=http://www.jzxue.com/download/G3200507120520LM.rar>download_org_path</a><br />";

echo $output_add_key;

echo $output_org_url;

?>

訪問第一個download_add_key鏈接可以正常下載注整,第二個鏈接download_org_path會返回403 Forbidden錯誤能曾。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末度硝,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子寿冕,更是在濱河造成了極大的恐慌蕊程,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,036評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件驼唱,死亡現(xiàn)場離奇詭異藻茂,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)玫恳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評論 3 395
  • 文/潘曉璐 我一進(jìn)店門捌治,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人纽窟,你說我怎么就攤上這事肖油。” “怎么了臂港?”我有些...
    開封第一講書人閱讀 164,411評論 0 354
  • 文/不壞的土叔 我叫張陵森枪,是天一觀的道長。 經(jīng)常有香客問我审孽,道長县袱,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,622評論 1 293
  • 正文 為了忘掉前任佑力,我火速辦了婚禮式散,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘打颤。我一直安慰自己暴拄,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,661評論 6 392
  • 文/花漫 我一把揭開白布编饺。 她就那樣靜靜地躺著乖篷,像睡著了一般。 火紅的嫁衣襯著肌膚如雪透且。 梳的紋絲不亂的頭發(fā)上撕蔼,一...
    開封第一講書人閱讀 51,521評論 1 304
  • 那天,我揣著相機(jī)與錄音秽誊,去河邊找鬼鲸沮。 笑死,一個胖子當(dāng)著我的面吹牛锅论,可吹牛的內(nèi)容都是我干的讼溺。 我是一名探鬼主播,決...
    沈念sama閱讀 40,288評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼棍厌,長吁一口氣:“原來是場噩夢啊……” “哼肾胯!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起耘纱,我...
    開封第一講書人閱讀 39,200評論 0 276
  • 序言:老撾萬榮一對情侶失蹤敬肚,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后束析,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體艳馒,經(jīng)...
    沈念sama閱讀 45,644評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,837評論 3 336
  • 正文 我和宋清朗相戀三年员寇,在試婚紗的時候發(fā)現(xiàn)自己被綠了弄慰。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,953評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡蝶锋,死狀恐怖陆爽,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情扳缕,我是刑警寧澤慌闭,帶...
    沈念sama閱讀 35,673評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站躯舔,受9級特大地震影響驴剔,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜粥庄,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,281評論 3 329
  • 文/蒙蒙 一丧失、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧惜互,春花似錦布讹、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至蔫慧,卻和暖如春挠乳,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背姑躲。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評論 1 269
  • 我被黑心中介騙來泰國打工睡扬, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留供搀,地道東北人圈纺。 一個月前我還...
    沈念sama閱讀 48,119評論 3 370
  • 正文 我出身青樓饵骨,卻偏偏與公主長得像锌钮,于是被迫代替她去往敵國和親伏尼。 傳聞我的和親對象是個殘疾皇子纲缓,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,901評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 《老男孩Linux運(yùn)維》筆記 隱藏Nginx軟件版本號 一般來說篇梭,軟件的漏洞都和版本有關(guān)看蚜。因此要盡量隱藏對訪問用戶...
    Zhang21閱讀 3,644評論 0 28
  • 1.ngnix介紹 ngnix www服務(wù)軟件 俄羅斯人開發(fā) 開源 性能很高 本身是一款靜態(tài)WWW軟件 靜態(tài)小文件...
    逗比punk閱讀 2,094評論 1 6
  • ngx_http_rewrite_module是Nginx服務(wù)器的重要模塊之一,它一方面實(shí)現(xiàn)了URL的重寫功能甩鳄,另...
    吃瓜的東閱讀 1,179評論 0 1
  • nginx重寫規(guī)則 nginx rewrite 正則表達(dá)式匹配 大小寫匹配 ~ 為區(qū)分大小寫匹配 ~* 為不區(qū)分大...
    桖辶殤閱讀 5,572評論 0 2
  • 定義: 此內(nèi)容不在自己服務(wù)器上逞度,而通過技術(shù)手段,繞過別人放廣告有利益的最終頁妙啃,直接在自己的有廣告有利益的頁面上向最...
    TTTTTriM閱讀 2,317評論 0 3