我有一个项目,我的客户端将很多文件上传到服务器上的文件夹。可以使用系统管理员页面上的链接(在PHP中)下载该文件。
如何禁用对此文件的直接访问(在浏览器地址中)?
答案 0 :(得分:7)
将上传目录放在Web根目录外的某个位置。例如,如果Apache(或您正在使用的任何Web服务器)配置了/ var / www的Web根目录,但将上载的文件配置为例如/ var / uploads,保证没有人可以直接下载它们(至少通过你的网络服务器)。
然后使用PHP脚本作为替代代理,首先检查用户是否经过身份验证和授权,然后使用例如passthru()
函数(当然,在设置了适当的标题之后)让用户下载文件。