干预中使用的静态图像的正确位置
Correct location for static image used in Intervention
假设我有一个 Job
通过 Intervention
生成头像图像,用户名位于静态默认背景图像之上。这个背景图片应该对每个项目成员可用,所以它应该存在于 repo 的某个地方。
我的问题是:这张静态背景图片在哪里?
当我查看有关 Directory Structure 的 Laravel 文档时,我得出的结论是:
它不应该存在于 public
目录中,因为它不需要公开访问(图像本身在没有用户名的情况下永远不会被使用)
The public
directory contains the index.php file, which is the entry point for all requests entering your application and configures autoloading. This directory also houses your assets such as images, JavaScript, and CSS.
它不应该存在于 storage
目录中,因为这个文件夹似乎是用于生成的东西(并且可能会被覆盖)
The storage
directory contains your compiled Blade templates, file based sessions, file caches, and other files generated by the framework. [...]
它可能在 resources
目录中存在,因为该目录包含 "raw, un-compiled assets"。但是没有用图片作为例子,这让我很怀疑。
The resources
directory contains your views as well as your raw, un-compiled assets such as LESS, SASS, or JavaScript. This directory also houses all of your language files.
你对这个问题有什么看法?
首先,您的应用程序不应依赖于同一文件系统中的文件。您应该使用 Laravel 存储 API,因为这样您就可以轻松地将文件存储在第三方存储解决方案(例如 Amazon S3)上,而无需更改配置设置以外的任何内容。
使用本地驱动程序,文件将默认存储在 storage/app
下,我认为这是正确的位置。实际上建议如果一个文件需要 public 可以访问,它应该存储在 storage/app/public/
中,它应该被符号链接到 public/
.
如您所见,public 目录用于存放任何需要 public 可访问的内容,包括已编译的 Less/Sass、JavaScript 和图像。 resources 目录用于未编译的副本,所以你的 Less/Sass 文件和 JavaScript 应该在 Mix 处理之前放在那里。存储文件夹用于更一般的文件存储用途,但我会看看使用第三方服务存储这些文件的可能性。
假设我有一个 Job
通过 Intervention
生成头像图像,用户名位于静态默认背景图像之上。这个背景图片应该对每个项目成员可用,所以它应该存在于 repo 的某个地方。
我的问题是:这张静态背景图片在哪里?
当我查看有关 Directory Structure 的 Laravel 文档时,我得出的结论是:
它不应该存在于
public
目录中,因为它不需要公开访问(图像本身在没有用户名的情况下永远不会被使用)The
public
directory contains the index.php file, which is the entry point for all requests entering your application and configures autoloading. This directory also houses your assets such as images, JavaScript, and CSS.它不应该存在于
storage
目录中,因为这个文件夹似乎是用于生成的东西(并且可能会被覆盖)The
storage
directory contains your compiled Blade templates, file based sessions, file caches, and other files generated by the framework. [...]它可能在
resources
目录中存在,因为该目录包含 "raw, un-compiled assets"。但是没有用图片作为例子,这让我很怀疑。The
resources
directory contains your views as well as your raw, un-compiled assets such as LESS, SASS, or JavaScript. This directory also houses all of your language files.
你对这个问题有什么看法?
首先,您的应用程序不应依赖于同一文件系统中的文件。您应该使用 Laravel 存储 API,因为这样您就可以轻松地将文件存储在第三方存储解决方案(例如 Amazon S3)上,而无需更改配置设置以外的任何内容。
使用本地驱动程序,文件将默认存储在 storage/app
下,我认为这是正确的位置。实际上建议如果一个文件需要 public 可以访问,它应该存储在 storage/app/public/
中,它应该被符号链接到 public/
.
如您所见,public 目录用于存放任何需要 public 可访问的内容,包括已编译的 Less/Sass、JavaScript 和图像。 resources 目录用于未编译的副本,所以你的 Less/Sass 文件和 JavaScript 应该在 Mix 处理之前放在那里。存储文件夹用于更一般的文件存储用途,但我会看看使用第三方服务存储这些文件的可能性。