PHP實現(xiàn)騰訊云視頻加密的示例代碼
前言
上傳到騰訊云上面的視頻,如何實現(xiàn)防盜鏈?
當我們的視頻放到,騰訊云上面,播放的時候如何實現(xiàn)指定過期時間,防止他人盜刷流量,這就要用到,騰訊云key防盜鏈技術,這個技術有什么用呢?
- 視頻 URL 中指定過期時間,他人獲取后無法長期使用
- 在視頻 URL 中指定最大允許播放 IP 數(shù),他人獲取后不能無限制地分發(fā)給更多人觀看
- CDN 節(jié)點檢查視頻 URL 中的參數(shù)和簽名,對視頻播放請求進行控制。如果請求檢查不通過,則返回403響應碼
接下來就是怎么用php實現(xiàn)了,大致過程也可以先查看一下官方文檔了解一下過程。
實現(xiàn)加密
1、打開騰訊云視頻開啟key防盜鏈


這是一串加密密鑰,先復制下來,接下來有用。
2、導入csv文件到數(shù)據(jù)庫
把騰訊云上面的視頻地址導出,然后導入到自己的數(shù)據(jù)庫

里面會給到播放地址一些的東西
3、加密
代碼可以用這個搬過去,只要把你的key替換一下,我用是tp6開發(fā),獲取數(shù)據(jù)庫的數(shù)據(jù),具體看自己項目,跟著來。
public function secret(Request $request)
{
//分頁處理
$where = Util::getMore([
['page',1],
['limit',20]
]);
$long = new Video();
//獲取數(shù)據(jù)
$data = $long->order('ID','asc')->field('video,title,play,cover')->page($where['page'],$where['limit'])->select();
if(empty($data)){
$this->success('成功',[]);
}
$res = [];
foreach($data as $item){
$item['play'] = intval($item['play']);
//替換域名,可以根據(jù)自己的來,不改的話,會報錯
$temp=str_replace('http://1500005512.vod2.myqcloud.com','',$item['video']);
$dirr = $this->lst($temp);
//替換成自己的key
$key = 'v3Pz10kGbn6HssfXoKK3';
// 過期時間秒;
$now = time();
$next = $now + 1*60*60;
// 生成16進制
$overtime = dechex($next);
// 生成sig
$str = $key.$dirr.$overtime;
$sign = md5($str);
$item['video'] = $item['video'] . '?t=' . $overtime .'&sign=' . $sign;
$rel[] = $item;
}
$ress = [];
foreach($rel as $item){
//urlen編碼
$item['video'] = urlencode($item['video']);
$ress[] = $item;
}
return success("ok",$ress);
}用postman,發(fā)送數(shù)據(jù),生成的key,可以用校正工具測試一下。如果報key無效,一般是生成的密鑰不對,一步一步檢查,發(fā)現(xiàn)錯誤并改正。
到此這篇關于PHP實現(xiàn)騰訊云視頻加密的示例代碼的文章就介紹到這了,更多相關PHP視頻加密內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
PHP中echo,print_r與var_dump區(qū)別分析
這篇文章主要介紹了PHP中echo,print_r與var_dump區(qū)別分析,主要講述了三者的類型本質及其操作數(shù)據(jù)類型的用法區(qū)別,非常具有實用價值,需要的朋友可以參考下2014-09-09
PHP curl模擬瀏覽器采集阿里巴巴的實現(xiàn)代碼
都說阿里巴巴有不能采集和防采集的神話,今天就用張老師講的Curl采集寫了一個模擬瀏覽器的代碼。2011-04-04
php使用fputcsv()函數(shù)csv文件讀寫數(shù)據(jù)的方法
這篇文章主要介紹了php使用fputcsv()函數(shù)csv文件讀寫數(shù)據(jù)的方法,分析了fputcsv()函數(shù)針對csv文件的讀寫操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-01-01
一個顯示某段時間內(nèi)每個月的方法 返回由這些月份組成的數(shù)組
一個顯示某段時間內(nèi)每個月的方法 返回由這些月份組成的數(shù)組,需要的朋友可以參考下2012-05-05
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安裝配置方法
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安裝配置方法...2007-05-05
PHP實現(xiàn)通過正則表達式替換回調(diào)的內(nèi)容標簽
這篇文章主要介紹了PHP實現(xiàn)通過正則表達式替換回調(diào)的內(nèi)容標簽的方法,涉及php正則匹配與替換的相關技巧,需要的朋友可以參考下2015-06-06

