Laravel中的存储文件夹

3
我们正在部署一个新的Laravel 5安装程序,我们的客户表示他们无法在我们运行的Web空间上提供可写目录。
当部署Laravel安装时,是否有任何方法可以绕过存储文件夹?因为我只能看到MySQL中存储的日志和基于会话的数据。请注意,HTML标签应保留。
2个回答

2

来自Laravel官方文档

存储目录包含编译的Blade模板、基于文件的会话、文件缓存和框架生成的其他文件。该文件夹分为app、framework和logs目录。app目录可用于存储应用程序使用的任何文件。框架目录用于存储框架生成的文件和缓存。最后,日志目录包含应用程序的日志文件。

只有在修改框架核心文件的情况下,您才能防止Laravel使用storage文件夹,因为这是Laravel设置的工作方式。

我强烈建议您不要这样做。只需迁移到另一个环境并获取该文件夹的写入权限即可。

我知道这不是一个适当的解决方案,但对于您的应用程序结构和完整性来说,在核心级别进行修改似乎更加有害。


我完全同意。不想在供应商文件上胡闹。只是想可能有一种绕过存储写入的方法,但我将不得不强制客户允许对该文件夹进行写访问。;-) - Neil Young
是的,看起来那似乎是唯一的方法。就像我之前说的,可能有其他方法可以做到,总会有办法,但这并不值得花费那么多精力。更简单的方法是给该文件夹赋予写入权限,或者请求系统管理员为您完成此操作。 - Harry Geo

1

顺便说一下,您可以将存储位置移动到其他地方... 比如临时文件夹?

如果这对您来说是一个好机会,您可以使用:

$app->useStoragePath("/tmp/laravel_storage/");

不要忘记在那里建立文件夹结构(即创建会话、文件等)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接