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 文件夹中。
例如,我想将两个.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 文件夹中。