欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

一个下载地址防盗的判断 大牛进来看下!该如何解决

程序员文章站 2024-02-10 17:39:16
...
一个下载地址防盗的判断 大牛进来看下!
两个网站 一个主站 一个上传用的子站

主站的download.php 为下载页面

子站的down.php为下载链接

必须通过download.php的下载点击链接才能下载
为了防止用户直接访问 子站/down.php?fileid=1能下载到该文件 做了下面的判断

download.php 增加一个哈希值
$hash = strtoupper(md5('downloadkey'.date('ymdh')));

down.php 也增加一个哈希值
$hash2 = strtoupper(md5('downloadkey'.date('ymdh')));

down.php判断

if($hash$hash2){
header("Content-Type: text/html; charset=utf-8");
echo '文件ID: '.$file_id.'
';
echo '['.$file_name.'] 文件地址已过期,请返回下载地址重新下载。

如果仍然出现此问题,请联系管理员

';
if($pd_gid==1){
echo '

---------- 以下内容 管理员可见 ----------
';
echo '文件HASH:'.$hash.'


';
echo '文件HASH2:'.$hash2.'
';
}


当时这样会有一个问题 就是当用户在20:59:59''的时候访问的下载页面,然后点击下载了

但是点击之后时间是21:00:01了,这样就造成了哈希值不一样,然后就不能下载,要返回重新下载一下就可以

如何解决呢。。

网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • 一个下载地址防盗的判断  大牛进来看下!该如何解决
  • 专题推荐

    作者信息
    一个下载地址防盗的判断  大牛进来看下!该如何解决

    认证0级讲师

    推荐视频教程
  • 一个下载地址防盗的判断  大牛进来看下!该如何解决javascript初级视频教程
  • 一个下载地址防盗的判断  大牛进来看下!该如何解决jquery 基础视频教程
  • 视频教程分类