我有一个辅助应用程序,每天都会将新文件夹放入我的Laravel应用程序中。该文件夹的内容需要公开访问,因为它们是闪存文件,每个日期的文件夹中包含许多资产,以及静态.html
页面,.jpgs
和.swfs
。这些链接是辅助应用程序的供应商编码框架的一部分。
使用php从非Web可访问文件夹移动文件似乎不是一个好选择。我已尝试使用readfile()
并考虑.htaccess
,但我不希望我的用户进行二次登录。
只有使用我的Laravel应用程序登录的用户才能访问这些文件。有没有什么方法可以用Laravel的Auth系统来保护对该文件夹内任何请求的访问,而不是基本身份验证?理解该文件夹中的页面请求有所不同吗?
答案 0 :(得分:0)
通过广泛搜索,我发现Laravel无法使用静态资产来处理公用文件夹的保护。这是Web服务器配置问题。
一种解决方案是设置一个由Web服务器读取的cookie,并在cookie值与预定值不匹配时退回用户。但是Laravel会加密cookie并处理每次加载时未加密的cookie。因此,只有使用App :: filter使用php setcookie()处理cookie时,该解决方案才有效。