无法从 laravel 5.8 中的存储路径访问文件

Can't access to file from storage path in laravel 5.8

我在尝试从存储路径访问文件时遇到了一些问题。 所以,我已经完成了 php artisan storage:link。 使用这些方法 asset('storage/file.xx') url('storage/file.xx') 或 'storage/file.xx' 可以在本地访问文件。但是我无法在共享主机上使用这些方法访问文件,并且文件 link 出现 404 错误。 任何想法?可以帮忙? 谢谢

为了最终解决问题,我在config/filesystems.php上设置了一个磁盘如下。

'uploads' => [
   'driver' => 'local',
   'root'   => public_path(),
],

然后在控制器中,我将文件保存为:

$request->file->storeAs($path, $name, 'uploads');
  • 将文件存储在 public 文件夹中,然后在视图中检索它们。为此,您在 config/filesystems.php

    上设置了磁盘
     'uploads' => [
      'driver' => 'local',
      'root'   => public_path(),
    ],
    

然后在保存文件的时候调用磁盘

谢谢,希望对您有所帮助

我们无法直接访问 Laravel 中的存储目录,因此我们需要创建 symlink,这将在 public 目录中创建一个短的 link 指向存储一。这样我们就可以使用文件并根据需要进行更改。如果我们想更改默认上传目录,那么我们必须将 filesystems.php 中的 storage_path() 替换为 public_path()。然后我们就可以轻松访问和操作这些文件了。