【发布时间】:2020-01-25 06:21:33
【问题描述】:
使用 Yii2 为 ShareX 构建多媒体上传。从互联网上,我可以看出 Yii 1.1 有一个受保护资产的文件夹。我只是好奇如何将各种文件(txt、img、zip)等保存在受保护的文件中并通过框架提供它们。
任何见解将不胜感激。
谢谢!
【问题讨论】:
-
你想达到什么目的?您能否提供有关受保护文件的链接?
-
我想通过 Yii2 提供文件,并防止用户(或非用户)简单地转到当前存储文件的 @webroot/assets/files 目录。 @robsch
-
其实assets文件夹里的文件是要被浏览器访问的,所以必须是可以访问的。它们通过 URL 获取。服务器无法区分调用(例如通过图像标签调用的图像或在浏览器的 URL 栏中手动输入的图像)。您的目标是用户必须登录才能访问这些资产吗?是关于上传的文件吗?那么你可能需要一种不同的方法。
-
我正在尝试制作一个与 Dropbox 等具有相似品质的应用程序 - 如何防止用户文件不受免费、无根据的访问? @robsch
-
通过 htaccess 禁用目录列表。当转到“{baseUrl}/files/”时,它将隐藏目录中的文件,但文件只能通过完整路径“{baseUrl}/files/somefile.txt”访问。否则,如果您想通过浏览器完全无法访问文件,您应该使用其他方法,例如将目录移动到文件系统的上层并通过 php 访问