nginx如何實(shí)現(xiàn)配置靜態(tài)資源服務(wù)器及防盜鏈
首先我們聊聊什么是圖片盜鏈?
盜鏈指的是其他網(wǎng)站不經(jīng)過(guò)你的許可直接通過(guò)鏈接使用你網(wǎng)站上的資源,從而消耗你的帶寬和資源,這不僅會(huì)影響你網(wǎng)站的性能,還有可能會(huì)導(dǎo)致資源被濫用。
簡(jiǎn)單來(lái)說(shuō),直接從你的網(wǎng)站上右鍵復(fù)制鏈接,粘貼到他自己的網(wǎng)站使用,實(shí)際請(qǐng)求的是你的服務(wù)器。
之前我們分享過(guò)服務(wù)端實(shí)現(xiàn)靜態(tài)資源防盜鏈的方式,前置文章:其實(shí),圖片防盜鏈的實(shí)現(xiàn)如此簡(jiǎn)單
在文章結(jié)尾我們也留了一種方案,就是使用nginx實(shí)現(xiàn)防盜鏈,服務(wù)端方案適合小型且并發(fā)不高的網(wǎng)站、性能一般,而Nginx專門為性能優(yōu)化而開(kāi)發(fā),性能是最重要的考量,非常注重效率,Nginx能夠支持高達(dá)50000個(gè)并發(fā)連接響應(yīng)數(shù)。
今天我們就來(lái)說(shuō)說(shuō)nginx如何實(shí)現(xiàn)配置靜態(tài)資源服務(wù)器及防盜鏈實(shí)現(xiàn)
nginx配置靜態(tài)資源服務(wù)器及防盜鏈
首先準(zhǔn)備一張防盜鏈提示圖片(來(lái)源于百度)

盜鏈提示圖片
言歸正傳
1、在nginx安裝目錄的html下創(chuàng)建res目錄
將上述圖片上傳至此,可以直接訪問(wèn)到,將此圖片作為盜鏈提示

2、配置靜態(tài)資源服務(wù)器
小白的圖片資源存放于服務(wù)器的/root/cxs-sys-currency-upload/upload/images目錄下
server {
# 監(jiān)聽(tīng)端口及其他配置項(xiàng)......
# 靜態(tài)資源服務(wù)配置
location /server/upload/ {
alias /root/cxs-sys-currency-upload/upload/images/;
valid_referers none *.cxs.plus cxs.plus;
if ( $invalid_referer ) {
# 如不滿足,指定訪問(wèn)如下資源
rewrite ^/ https://www.cxs.plus/res/1.jpg;
return 403;
}
}
# 其他配置項(xiàng)......
}語(yǔ)法說(shuō)明
valid_referers none | blocked | server_names | strings ….;
--none:允許沒(méi)有http_refer的請(qǐng)求訪問(wèn)資源,檢測(cè) Referer 頭域不存在的情況,則可以訪問(wèn)。
--blocked:檢測(cè) Referer 頭域的值被防火墻或者代理服務(wù)器刪除或偽裝的情況。
--server_names :只允許指定ip/域名來(lái)的請(qǐng)求訪問(wèn)資源(白名單)??稍O(shè)置一個(gè)或多個(gè) URL ,檢測(cè) Referer 頭域的值是否是這些 URL 中的某一個(gè)。在生產(chǎn)環(huán)境中盡量使用域名,不使用ip。
3、重新啟動(dòng)nginx后,使用postman進(jìn)行測(cè)試
添加Referer為www.cxs.plus測(cè)試,可以訪問(wèn)

使用其他域名測(cè)試,返回盜鏈提示圖片

結(jié)語(yǔ)
以上就是Nginx實(shí)現(xiàn)靜態(tài)資源防盜鏈的方案,快去給你的系統(tǒng)加上吧!
更多關(guān)于Nginx配置靜態(tài)資源防盜鏈 的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
詳解Linux環(huán)境下使Nginx服務(wù)器支持中文url的配置流程
這篇文章主要介紹了Linux環(huán)境下使Nginx服務(wù)器支持中文url的配置流程,文中還介紹了一個(gè)在Linux下將非UTF-8的文件名轉(zhuǎn)換為UTF-8編碼,的方法,需要的朋友可以參考下2016-04-04
nginx反向代理后無(wú)限重定向的問(wèn)題解決方法
這篇文章主要為大家介紹了nginx反向代理后無(wú)限重定向的問(wèn)題解決方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
nginx實(shí)現(xiàn)靜態(tài)文件的token認(rèn)證過(guò)程
這篇文章主要介紹了nginx實(shí)現(xiàn)靜態(tài)文件的token認(rèn)證過(guò)程,2024-06-06
Nginx實(shí)現(xiàn)灰度發(fā)布的常見(jiàn)方法小結(jié)
Nginx 就像是一個(gè)智能的交通指揮員,它位于用戶請(qǐng)求和后端服務(wù)之間,負(fù)責(zé)對(duì)請(qǐng)求進(jìn)行分發(fā)和管理,在灰度發(fā)布中,Nginx 可以根據(jù)我們?cè)O(shè)定的規(guī)則,這篇文章給大家介紹了Nginx實(shí)現(xiàn)灰度發(fā)布的常見(jiàn)方法小結(jié),需要的朋友可以參考下2024-07-07
Nginx端口被占用的解決方案(systemctl restart nginx失敗)
ginx (engine x) 是一個(gè)高性能的HTTP和反向代理服務(wù)器,也是一個(gè)IMAP/POP3/SMTP服務(wù)器,它也是一種輕量級(jí)的Web服務(wù)器,可以作為獨(dú)立的服務(wù)器部署網(wǎng)站(類似Tomcat),本文給大家介紹了NGINX啟動(dòng)報(bào)錯(cuò),端口被占用解決方案,需要的朋友可以參考下2024-10-10

