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來測試