我的用户文件夹应该在Slim 3项目中的哪个位置?

时间:2016-09-15 21:57:11

标签: php slim

我目前正在使用Slim 3构建一个简单的文件托管脚本。目前我的用户文件夹与我的公共目录位于同一级别。现在我正在尝试访问用户文件夹中的文件,我收到的错误是由于我的文档根目录无法访问我的用户文件夹。将我的用户文件夹放在公共文件夹中是不是更好的主意,因为从技术上讲,这将是登录用户的公共信息?

2 个答案:

答案 0 :(得分:1)

这取决于这些文件是什么 - 如果它们仅适用于特定用户或者所有用户都可以使用。

当文件必须是私有的时,你不能将它们公开,简单,因为每个人都可以破解网址并获取访问权限。因此,您应该将它们放在任何* could not access pidfile for Cassandra 目录中,并使用类似data的端点使它们可用。

在这样的端点中,您可以轻松地附加关于文件类型的标题,或者是否应该下载或尝试在浏览器窗口中显示。

答案 1 :(得分:1)

无论您公开使用哪种Web服务器,都将默认处理为任何其他资产:

  • 其网址基于实际文件名
  • 如果您知道可以下载的网址
  • 如果是.php文件,则会执行

您当然可以解决所有这些问题(其中一些问题甚至可能不关心您的用例)但我不认为这是典型的用户管理目录树的理想布局。你当前的方法对我来说更有意义。

要访问此类文件,您需要创建一个适当的下载脚本,进行所有适当的检查(例如访问检查),匹配来自URL的文件系统内容并将资源作为静态文件提供。在Slim中,这意味着创建一个带参数的路径并编写一个处理所有这些东西的处理函数。