Laravel - 在哪里存储我不想与用户共享的文件

Laravel - where to store files which I don't want to share with users

例如,我想将两个.png 文件合并到一个.png 文件中,但我不想与用户共享这些部分。目前我将文件存储在存储文件夹中,但问题是存储文件夹默认为 .gitignore 文件。当然我可以允许将其推送到 git,但我认为这不是一个好主意,因为用户可能上传了数千个其他文件。现在,如果我想在另一台计算机上继续工作,我应该手动移动所有部件。

那你有什么可以给我的建议吗?

您可以将其存储在应用程序中的任何位置。

例如,您可以在项目根目录中创建一个名为 /uploads 的文件夹,然后使用 laravel helper 函数之一来指定保存文件的位置:

示例:

$save_path = base_path('uploads');

您可以使用 Laravel File Class 来确保路径存在于:

File::makeDirectory($save_path, $mode = 0755, true, true);

您需要在文件顶部添加 use File;,其中包含所有 class。

稍后,要访问所述文件,您可以创建一个 View Composer,您可以在其中添加逻辑以限制可以查看该文件的人员。

如果您想保护您的文件,以便任何人未经许可都无法访问,请将所有文件存储到 storage 文件夹中。不要将文件放在 public 文件夹中。