Maison  >  Article  >  développement back-end  >  Comment interdire le téléchargement de l'URL d'une vidéo en php

Comment interdire le téléchargement de l'URL d'une vidéo en php

藏色散人
藏色散人original
2020-09-04 09:15:273893parcourir

Comment désactiver les téléchargements d'URL de vidéo en PHP : définissez d'abord le contenu du modèle "detail.html" ; puis créez un jeton pour la solution d'invalidation, puis obtenez l'adresse réelle de la ressource stockée dans la base de données via vid dans PHP ; fichier ; enfin, supprimez le jeton et assurez-vous que la vidéo ne peut être lue qu'une fois à la fois.

Comment interdire le téléchargement de l'URL d'une vidéo en php

Recommandé : "Tutoriel vidéo PHP"

php empêche le téléchargement des ressources vidéo

Si l'adresse de la ressource est : http://xxx.com/videoData/xxx.mp4, la lecture peut être réalisée

detail.html template content

<video controls="controls" autoplay="autoplay">
<source type="video/ogg" src="xxx.com/goVideo.php?video=1" /><!--这样的地址他们就醉了吧,真实地主保护住了 而且每次进入详情页播放完了,重新进入detail链接方法中,才能播放 -->
 Your browser does not support the video tag.
</video>

détail ; Contenu de la couche de contrôle .php

// 先进入详情页
publicfunction detail(){
$_SESSION[&#39;token&#39;] = md5("xxx"); //做一个token 用于失效方案
//进入到详情页
}

le code goVideo.php est le suivant

/** 
     +---------------------------------------------------------- 
     * 生成html video 播放地址 
     +---------------------------------------------------------- 
     * @access public 
     +---------------------------------------------------------- 
     */  
    public function goVideo()  
    {  
       $vid = (int)$_GET[&#39;videoId&#39;]; //数据库存放的资源id
       $data = $this->getInfo($vid); //通过vid 获取 数据库存放的真实资源地址
        if($_SESSION["token"]){  
            unset($_SESSION["token"]); //删除token,保证每次只能播放一次
         
        //页面直接输出视频
        $filePath=$data[&#39;URL&#39;];
        ini_set(&#39;memory_limit&#39;, &#39;512M&#39;);
        header("Pragma: public");
        header("Expires: 0");
        header("Content-Type: application/octet-stream"); //文件mime类型
        //header("Content-Disposition: attachment; filename=video11.mp4;" ); //文件名$filename
        //header("Content-Length: 83995");  //文件大小$fsize
        ob_clean();
        flush();
        //ob_end_clean();
        @readfile($filePath);
        }  
    }

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn