Nginx設(shè)置Referer來防止盜圖的實(shí)現(xiàn)方法
如果服務(wù)器的圖片被別的網(wǎng)站盜鏈,將影響服務(wù)器的帶寬以及訪問速度,這時(shí)我們就需要設(shè)置圖片文件或視頻文件的防盜鏈功能;
防盜鏈功能,簡(jiǎn)單來說就是你可以直接訪問該資源,但是不能將我的資源鏈接放到你自己的服務(wù)器上讓別人訪問,尤其是圖片或視頻這種比較大的文件,容易導(dǎo)致服務(wù)器響應(yīng)很慢。
如果不是圖床,還真怕別的網(wǎng)站直接使用本站圖片。這樣子流量很可能一下子就被刷光了,畢竟CDN都是白花花的銀子買來的。 因此,還是設(shè)置一個(gè)防盜鏈吧,Nginx就可以完成這個(gè)功能了。
一般來說,遵照HTTP協(xié)議實(shí)現(xiàn)的瀏覽器,在從A網(wǎng)站訪問B網(wǎng)站時(shí),都會(huì)帶上當(dāng)前網(wǎng)站的URL,以表明此次點(diǎn)擊是從何而起的。因此, Nginx的這個(gè)模塊也是依靠這個(gè)來實(shí)現(xiàn),所以,如果駭客不加此頭部,還是沒法愉快的防盜圖。
Nginx官網(wǎng)文檔如下:
Syntax: valid_referers none | blocked | server_names | string ...;
Default: —
Context: server, location
nginx referer指令簡(jiǎn)介
nginx模塊ngx_http_referer_module通常用于阻擋來源非法的域名請(qǐng)求.我們應(yīng)該牢記,偽裝Referer頭部是非常簡(jiǎn)單的事情,所以這個(gè)模塊只能用于阻止大部分非法請(qǐng)求.我們應(yīng)該記住,有些合法的請(qǐng)求是不會(huì)帶referer來源頭部的,所以有時(shí)候不要拒絕來源頭部(referer)為空的請(qǐng)求.
因此,我們可以在 server 或者 location 塊加上代碼,我是保存為 valid_referers.conf :
valid_referers none blocked server_names;
if ($invalid_referer) {
return 403;
}
然后在對(duì)應(yīng)需要的地方加上 include /etc/nginx/valid_referers.conf ,當(dāng)然,執(zhí)行這個(gè)的前提是已經(jīng)把 valid_referers.conf 放到對(duì)應(yīng)機(jī)器上的 /etc/nginx/valid_referers.conf 路徑下。
示例:
location /articles/img {
include /etc/nginx/valid_referers.conf;
root /data/blog/code;
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
CentOS環(huán)境下Nginx配置SSL證書實(shí)現(xiàn)https請(qǐng)求詳解
這篇文章主要為大家介紹了Nginx實(shí)戰(zhàn)-配置SSL證書(CentOS環(huán)境),實(shí)現(xiàn)https請(qǐng)求過程步驟,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05
openssl?生成nginx自簽名證書的實(shí)現(xiàn)
本文主要介紹了openssl?生成nginx自簽名證書的實(shí)現(xiàn),主要包括openssl?req命令的使用方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-12-12
淺談Nginx10m+高并發(fā)內(nèi)核優(yōu)化詳解
這篇文章主要介紹了淺談Nginx10m+高并發(fā)內(nèi)核優(yōu)化詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-03-03
Nginx學(xué)習(xí)之如何搭建文件防盜鏈服務(wù)的方法示例
這篇文章主要介紹了Nginx學(xué)習(xí)之如何搭建文件防盜鏈服務(wù)的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-10-10
nginx找到默認(rèn)根目錄(root?html)的方法
這篇文章主要給大家介紹了nginx如何找到默認(rèn)根目錄(root?html),文中給出詳細(xì)的解決方法,通過代碼示例講解的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下2023-11-11
Windows設(shè)置nginx開機(jī)自啟動(dòng)的方法
這篇文章主要介紹了Windows設(shè)置nginx開機(jī)自啟動(dòng)的方法,通過兩種方式實(shí)現(xiàn)nginx的開機(jī)自啟動(dòng):winws和window計(jì)劃程序,每種方式給大家介紹的非常詳細(xì)需要的朋友可以參考下2022-11-11

