1)加密串與過期時間作為url中的引數
2)nginx伺服器接收到了過期時間,也使用過期時間、配置裡金鑰、檔案uri生成加密串
3)計算的加密串與url傳遞的加密串進行對比
./configure --with-http_secure_link_module #編譯nginx時加入
該模組提供兩種工作模式:
通過配置secure_link
,secure_link_md5
,可實現對鏈結進行許可權以及過期檢查判斷的功能。
location /s/
if ($secure_link = "0")
}
echo -n
'2147483647/s/link127.0.0.1 secret'|\
openssl md5 -binary
| openssl base64 | tr +/-_
| tr -d
=
$secret = " secret";
$uri = "/hls/cctv1.m3u8";
$expire = time() + 300;
$md5 = base64_encode(md5($expire.$uri.$secret,true));
$md5 = strtr($md5, '+/', '-_');
$md5 = str_replace('=', '', $md5);
$url = "";
通過配置secure_link_secret
可實現對鏈結進行許可權判斷的功能。
請求的鏈結形式如下
/prefix/hash/link
字首是非斜槓的任意的字串,雜湊值是link與金鑰secret的md5值,link請求的路徑
location /s/
rewrite ^ /helloworld/
$secure_link;
}location /helloworld/
如訪問
/s/fdb191a547321828363169ca530ee271/hello
將會被重定向到
/helloworld/hello
雜湊值的計算方法
md5(link.mysecret)
nginx防盜煉 s3防盜煉
nginx防盜煉 編輯檔案 usr local nginx conf nginx.conf 以上 解釋如下 1 location中指定要防篡改的檔案型別 2 valid referers指定資源訪問是通過以下幾種方式為合法 none 直接通過url訪問,無referer值的情況 blocked re...
防盜煉與防防盜煉簡析
防防盜煉策略 所謂判斷引用位址,就是判斷瀏覽器請求時http頭的referer欄位的值。http referer是header的一部分,當瀏覽器向web伺服器傳送請求的時候,一般會帶上referer,告訴伺服器該請求是從哪個頁面位址過來的,伺服器因此可以獲得一些資訊用於處理。示例 html js c...
防盜煉問題
b是另乙個 的站長,b在未經a允許的情況下,偷偷使用a的 的資源,放置在自己 的網頁中,通過這種方法盜取空間和流量。在這樣的情況下,第三方 使用者看到的是b的 使用者不知道也不關心 裡的是來自於 由於oss是按照使用量來收費的,這樣使用者a在沒有獲取任何收益的情況下,反而承擔了資源使用費用。本文就是...