Nginx做爲靜態資源web服務之防盜鏈

Nginx做爲靜態資源web服務之防盜鏈


首先,爲何須要防盜鏈,由於有些資源存在競爭對手的關係,好比淘寶的商品圖片,不會輕易的讓工具來爬蟲爬走收集。可是若是使用防盜鏈,須要知道上一個訪問的資源,而後放入名單中進行判斷。那麼如何獲取上一個訪問的資源呢,能夠經過http_referers模塊來實現。

1.查看 nginx.conf能夠查看日誌的配置中有下面這一段

因此能夠經過看日誌來看看 $http_referer 保存的信息是什麼了。

2. 配置一個html,html信息以下
<html>
        <head>
                <title>duguxiaobiao</title>
        </head>
        <body style="background-color:red">
                <img src="http://192.168.78.135/1.jpg"/>
        </body>
</html>
3. default.conf文件中信息仍是以下,暫時不修改,再打開日誌,等加載後輸入網址看效果

4. 輸入網址,查看效果


從日誌中也能夠看到,上一個網址是 test_referer.html文件,下面來配置防盜鏈

5. 在default.conf文件中添加以下配置

解釋一下: valid_referers:表示白名單, none:表示空的來路,好比直接訪問的, blocked:表示被防火牆標識過的來路, 後面的ip就是容許的名單。若是不在這些白名單的配置下得來路,都會進入到 403。

6. 使用工具測試,先模擬從百度下發送請求,發現403被攔截
下面改爲 本地ip來測試


至此,測試成功。在這裏推薦一篇博客 ,詳解講解了 nginx防盜鏈的使用 nginx防盜鏈詳細解說
相關文章
相關標籤/搜索