使用php加密url AmazonS3
我想保护我的url.mp4 amazon s3,以便能够将其插入我网站上的播放器中。我想得到一件事:使用php加密url AmazonS3,php,encryption,amazon-s3,mp4,Php,Encryption,Amazon S3,Mp4,我想保护我的url.mp4 amazon s3,以便能够将其插入我网站上的播放器中。我想得到一件事: https://[mysite]/encrypt/encriptar.php?v=M3BtRGtUNkRoSndYRU5PdWI0Tmd2SjUrUmZRWWxybFVGU2pCTHBkT3B0U1Fkd3JsN2RaQXFQYURYdjVUL1g2bk1KQTkvcUZKbUY3UTRvOVNSNzNtbks3NUl6TzlZVFdHbXFKT1ZQUVNvOU9ndS9CTnowYmVqVW
https://[mysite]/encrypt/encriptar.php?v=M3BtRGtUNkRoSndYRU5PdWI0Tmd2SjUrUmZRWWxybFVGU2pCTHBkT3B0U1Fkd3JsN2RaQXFQYURYdjVUL1g2bk1KQTkvcUZKbUY3UTRvOVNSNzNtbks3NUl6TzlZVFdHbXFKT1ZQUVNvOU9ndS9CTnowYmVqVWk4dXA4dzk0L0xVOStlb1Y5UTFsaU1RTmVKUUFUd2VRPT0=
我找到了这个脚本,但它似乎不起作用,无法播放视频:
<?php
session_start();
$sid = session_id();
$path = "http://s3-us-east-1.amazonaws.com/my bucket/myfile.mp4";
$hash = md5($path.$sid);
$_SESSION[$hash] = $path;
?>
<html>
<head></head>
<body>
<video width="320" height="240" controls>
<source src="encriptar.php?video=<?= $hash ?>" type="video/mp4">
</video>
</body>
</html>
当有人访问该页面时,他们将尝试再次访问该页面来播放视频。这是一个循环
在encriptar.php中执行此操作:
<?php
session_start();
$sid = session_id();
$path = "http://s3-us-east-1.amazonaws.com/my bucket/myfile.mp4";
$hash = md5($path.$sid); //You need to use proper encryption. This is not secure at all.
$_SESSION[$hash] = $path;
?>
<html>
<head></head>
<body>
<video width="320" height="240" controls>
<source src="decrypt.php?video=<?= $hash ?>" type="video/mp4">
</video>
</body>
</html>
这样,您的encryptar将为解密脚本创建一个哈希,该脚本将解密并代理该文件。请注意,每个人都可以下载视频,唯一能保护你不受伤害的是人们知道你的bucket名称 encriptar.php
做什么?这个[link][/link]Md5不是加密我试过了,正如你说的我看到了,但文件没有播放,这是无效的源代码为什么?好的,视频工作,但如果我向前移动播放器,半个视频示例视频挂起,向前和向后移动播放器,我必须等待所有缓冲区都满了。如果没有脚本,视频效果会很好。你有办法解决这个问题谢谢much@evil1990这要复杂得多。检查
<?php
session_start();
if (isset($_GET["video"]) && isset($_SESSION[$_GET["video"]])) {
header("Content-Type: video/mp4");
$file = $_SESSION[$_GET["video"]]; //Get the filename
readfile($file); //Proxy
die();
}