Laravel 存储 public url 在 storage:link 之后不起作用
Laravel storage public url after storage:link not working
我正在尝试通过浏览器上的 URL 访问我服务器上的 public 图像。
为此,我的存储文件夹中有以下层次结构:
storage
|app
|public
|post
|1
|myimage.png
我再运行下面的命令创建一个link
php artisan storage:link
现在,当我尝试通过 http://localhost:8000/storage/post/1/myimage.png 在浏览器上访问我的图像时,我得到一个 404 NOT FOUND 页面。
我什至尝试了 http://localhost:8000/post/1/myimage.png,同样的事情。
这是我在 filesystems.php 文件中的设置:
'disks' => [
...,
'public' => [
'driver' => 'local',
'root' => storage_path('app/public'),
'url' => env('APP_URL').'/storage',
'visibility' => 'public',
],
...,
],
'links' => [
public_path('storage') => storage_path('app/public'),
],
我做错了吗?
我找到了解决 public 图片难题的方法。
我不再将图像存储在 /storage/public
中并创建符号 link,而是直接从根目录存储在 /public
文件夹中。
我必须像这样在 /config/filesystems.php
文件中添加配置:
'disks' => [
...,
'root_public' => [
'driver' => 'local',
'root' => public_path('/'),
'url' => env('APP_URL'),
'visibility' => 'public',
],
...,
],
有了这个,我的 public 目录和图像可以通过 http://localhost:8000/mypublicpath/myimage.png
访问
我正在尝试通过浏览器上的 URL 访问我服务器上的 public 图像。
为此,我的存储文件夹中有以下层次结构:
storage
|app
|public
|post
|1
|myimage.png
我再运行下面的命令创建一个link
php artisan storage:link
现在,当我尝试通过 http://localhost:8000/storage/post/1/myimage.png 在浏览器上访问我的图像时,我得到一个 404 NOT FOUND 页面。
我什至尝试了 http://localhost:8000/post/1/myimage.png,同样的事情。
这是我在 filesystems.php 文件中的设置:
'disks' => [
...,
'public' => [
'driver' => 'local',
'root' => storage_path('app/public'),
'url' => env('APP_URL').'/storage',
'visibility' => 'public',
],
...,
],
'links' => [
public_path('storage') => storage_path('app/public'),
],
我做错了吗?
我找到了解决 public 图片难题的方法。
我不再将图像存储在 /storage/public
中并创建符号 link,而是直接从根目录存储在 /public
文件夹中。
我必须像这样在 /config/filesystems.php
文件中添加配置:
'disks' => [
...,
'root_public' => [
'driver' => 'local',
'root' => public_path('/'),
'url' => env('APP_URL'),
'visibility' => 'public',
],
...,
],
有了这个,我的 public 目录和图像可以通过 http://localhost:8000/mypublicpath/myimage.png