【问题标题】:Where to upload product images in Laravel?Laravel 在哪里上传产品图片?
【发布时间】:2018-06-25 20:16:50
【问题描述】:

我正在使用 Laravel 框架构建一个电子商务应用程序。哪个位置最适合在前端上传产品图片、Slider 图片、Banner 图片以及所有动态上传的图片?

存储/应用/公共

公共/img

如果我要去 storage/app/public 位置。如何将这些图片访问到网站前端?

非常感谢您提供的任何帮助。

【问题讨论】:

  • storage/app/public 和 get using echo assets('storage/app/public');
  • 您可以使用php artisan storage:link 来“创建一个从“public/storage”到“storage/app/public”的符号链接
  • @kerbholz 所以你建议存储/应用程序/公共。它是一个电子商务应用程序。超过 10000 种产品将在那里。未来有什么问题吗?

标签: php laravel file-upload e-commerce


【解决方案1】:

将您的图像存储在您的storage 目录中。

这是最好的地方,因为您可以使用Storage 外观,它可以轻松存储图像。 https://laravel.com/docs/5.6/filesystem

如果您要将存储目标更改为 CDN(例如 Amazon S3),您也可以像在本地使用相同的方式使用 Storage 外观。您只需更改config/filesystems.php 中的配置,存储图像的代码将保持不变。

一旦您将图像存储在存储目录中,您可以使用php artisan storage:linkhttps://laravel.com/docs/5.6/filesystem#configuration 符号链接将它们公开给前端

这将创建一个从您的存储目录到公共目录的符号链接。

您可以使用帮助器asset 来检索图像的路径。 https://laravel.com/docs/5.6/helpers#method-asset

--

关于如何在存储目录中存储文件的例子很多:

https://quickadminpanel.com/blog/file-upload-in-laravel-the-ultimate-guide/

https://scotch.io/tutorials/understanding-and-working-with-files-in-laravel

How to save uploaded image to Storage in laravel?

【讨论】:

【解决方案2】:

使用

public/img

然后用asset函数定位到前端

{{ asset('name_of_file') }}

【讨论】:

  • 将图像放在根文件夹之外是否更好?有安全漏洞吗?
  • 如果你真的很关心安全性,那么你应该把它放在 storage/app/public 然后用资产定位
猜你喜欢
  • 2019-12-25
  • 2012-03-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多