Laravel 存储符号链接

Laravel Storage symlink

我正在尝试访问存储在 storage/app/.../.../file.png.

中的文件

我创建了一个符号链接,将我的存储文件夹链接到 public/storage。

当我尝试访问适当的文件时,我的服务器抛出 404,说找不到文件。显然我没有以正确的方式访问它,但我不知道要更改什么。

<img src="{{asset('storage/app/puppy/18/ax2Fk08nyWrV6TwTOnsXNCkNGuIdFebB7TTfPYGb.png')}}" alt="">

试试这个。

<img src="{{asset('puppy/18/ax2Fk08nyWrV6TwTOnsXNCkNGuIdFebB7TTfPYGb.png')}}" alt="">

当您在 laravel 中创建符号链接时,它会创建 storage/app/public 文件夹到 public/storage 文件夹的符号链接。这意味着如果您想公开访问任何文件,请将所有文件放入 storage/app/public 文件夹并像这样访问它

<img src="{{asset('storage/puppy/18/test.png')}}" alt="">

此处表示文件 test.png 应该位于 storage/app/public/puppy/18 文件夹中。

执行 php artisan storage:link 以在 laravel

中创建符号链接

希望它清除你

对于共享主机,请尝试以下解决方案

代码:

1) 删除 public_html/public/storage

中的存储文件夹

2) 在 public_html 文件夹

中创建一个 php 文件,例如 symlink.php

3) 添加代码到 symlink.php 文件

$targetFolder = $_SERVER['DOCUMENT_ROOT'].'/storage/app/public';
$linkFolder = $_SERVER['DOCUMENT_ROOT'].'/public/storage';
symlink($targetFolder,$linkFolder);
echo 'Symlink process successfully completed';

4) 转到网站示例。com/symlink.php

就这些了...

来自 youtube 的视频 url => https://www.youtube.com/watch?v=svyN8-PjGHc