Php 文件下载页面-需要考虑的事项

Php 文件下载页面-需要考虑的事项,php,asp.net,ruby-on-rails,asp.net-mvc,django,Php,Asp.net,Ruby On Rails,Asp.net Mvc,Django,每次我从某个网站下载内容时,我都会被重定向到另一个页面,而不是它所说的“下载将在5秒钟后开始,或者单击此链接” 我现在还在建立一个网站,在那里经过身份验证的用户应该能够下载一些文件 我想知道在构建下载页面时需要考虑哪些事项? (可能类似于反机器人程序,可以下载100次相同的文件等)这取决于您要添加多少用户控件 1) 您可以为每次下载尝试添加captcha控件 2) 只有当某些用户(由IP标识)下载N个文件时,您才可以“显示”它,只需获取IP并将其添加到数据库(对于历史pourpose)中,并注明

每次我从某个网站下载内容时,我都会被重定向到另一个页面,而不是它所说的“下载将在5秒钟后开始,或者单击此链接”

我现在还在建立一个网站,在那里经过身份验证的用户应该能够下载一些文件

我想知道在构建下载页面时需要考虑哪些事项?


(可能类似于反机器人程序,可以下载100次相同的文件等)

这取决于您要添加多少用户控件

1) 您可以为每次下载尝试添加captcha控件

2) 只有当某些用户(由IP标识)下载N个文件时,您才可以“显示”它,只需获取IP并将其添加到数据库(对于历史pourpose)中,并注明日期时间,如果用户尝试在X时间内下载另一个(或同一个)文件,您可以显示验证码或阻止下载

3) 考虑到您在回答中所写的内容,我想您知道如何创建downloader.php来发送文件本身,而不是文件的直接链接

我所知道的保护文件不被未经授权的访问/下载的最佳方法是将其放入一个无法从web访问的文件夹中,使用php加载并让用户下载,或者将其复制到一个可以从web访问的临时目录中,并给用户tmp链接(通过友好方式创建)


在第二种情况下,您需要偶尔清理tmp目录一次,这取决于您要添加多少用户控件

1) 您可以为每次下载尝试添加captcha控件

2) 只有当某些用户(由IP标识)下载N个文件时,您才可以“显示”它,只需获取IP并将其添加到数据库(对于历史pourpose)中,并注明日期时间,如果用户尝试在X时间内下载另一个(或同一个)文件,您可以显示验证码或阻止下载

3) 考虑到您在回答中所写的内容,我想您知道如何创建downloader.php来发送文件本身,而不是文件的直接链接

我所知道的保护文件不被未经授权的访问/下载的最佳方法是将其放入一个无法从web访问的文件夹中,使用php加载并让用户下载,或者将其复制到一个可以从web访问的临时目录中,并给用户tmp链接(通过友好方式创建)


在第二种情况下,您需要偶尔清理一下tmp目录

如果您的下载位于登录页面后面,则bot将无法从您那里下载任何内容,因此我认为这不是一个问题issue@pastylegsbot可能会登录并下载文件1000次,还有,为什么到处都有一个单独的页面,用户必须等待下载5分钟seconds@ChuckNorris我认为你必须等待下载5秒钟,这样他们才能告诉你为什么你要列出这么多编程语言?你的目标是什么?你的问题很广泛,这只是关于机器人吗?你能指定机器人是什么吗?下载管理器呢?您想支持下载管理器吗?是否要显示广告/通知,并且在下载之前必须阅读/接受/单击这些广告/通知?100倍下载限制,这适用于哪个时间跨度?@hakre我列出了最流行的web框架,我的目标是安全的“防坏人”下载页面如果你的下载在登录页面后面,机器人将无法从你那里下载任何东西,所以我不认为这是一个错误issue@pastylegsbot可能会登录并下载文件1000次,还有,为什么到处都有一个单独的页面,用户必须等待下载5分钟seconds@ChuckNorris我认为你必须等待下载5秒钟,这样他们才能告诉你为什么你要列出这么多编程语言?你的目标是什么?你的问题很广泛,这只是关于机器人吗?你能指定机器人是什么吗?下载管理器呢?您想支持下载管理器吗?是否要显示广告/通知,并且在下载之前必须阅读/接受/单击这些广告/通知?100倍下载限制,这适用于哪个时间跨度?@hakre我列出了最流行的web框架,我的目标是一个安全的“防坏人”下载页面