在 Laravel 中,公共路径和存储路径有什么区别?

我是 Laravel 和 php 的新手,我注意到有两个不同的文件夹在它们上面是公开的。一个是public/storage,一个是storage/app/public,这两者有什么区别?我应该将我想要使用的文件(如图像和 CSS 样式)放在哪里?



天涯尽头无女友
浏览 116回答 2
2回答

慕尼黑8549860

这public/storage只是一个符号链接,storage/app/public所以两者都是一样的,公共磁盘适用于可公开访问的文件。默认情况下,公共磁盘使用本地驱动程序并将这些文件存储在 storage/app/public 中。要使它们可以从 Web 访问,您应该创建一个从 public/storage 到 storage/app/public 的符号链接。当使用像 Envoyer 这样的零停机部署系统时,此约定会将您可公开访问的文件保存在一个目录中,该目录可以轻松地跨部署共享。要创建符号链接,您可以使用storage:linkArtisan 命令:php artisan storage:link

森栏

Laravel 提供了出色的文件系统抽象,并且使用起来非常简单。公共磁盘适用于可公开访问的文件。默认情况下,公共磁盘使用本地驱动程序并将这些文件存储在 storage/app/public 中。要创建符号链接,您可以使用 storage:link Artisan 命令:php artisan storage:link使用本地驱动程序时,所有文件操作都相对于文件系统配置文件中定义的根目录。默认情况下,此值设置为 storage/app 目录。这是文档的链接:https ://laravel.com/docs/5.8/filesystem
打开App,查看更多内容
随时随地看视频慕课网APP