【问题标题】:Laravel storage symlink image viewLaravel 存储符号链接图像视图
【发布时间】:2017-12-29 09:39:53
【问题描述】:

我创建了一个符号链接来在我的视图中显示保存在存储目录中的图像。

为此我运行了这个命令:

ln -s /Users/myname/code/myApp/storage/app /Users/myname/code/myApp/public/storage

这确实在公共内部创建了一个存储文件夹,该存储文件夹包含一个文件夹名称 images,我想在我的视图中显示它。

我试图这样向他们展示:

<img src="{{ asset('storage/app/' . $categoryValue->category_avatar) }}" />

但图像标签仍然为空,我收到以下错误消息:

获取 http://myapp.dev/storage/app/images/TpHsZhQBMVdihEtSwiPo6hz36l1hE2K5joFfaerB.jpeg 404(未找到

路径正确,但仍然不显示图像。

【问题讨论】:

    标签: laravel laravel-5.4 symlink


    【解决方案1】:

    尝试路线:

        Route::get('storage/{folder}/{filename}', function ($folder,$filename)
    {
        $path = public_path('storage/' .$folder.'/'. $filename);
        if (!File::exists($path)) {
            abort(404);
        }
        $file = File::get($path);
        $type = File::mimeType($path);
        $response = Response::make($file, 200);
        $response->header("Content-Type", $type);
        return $response;
    });
    

    【讨论】:

      【解决方案2】:

      您在创建符号链接时指定了错误的目录作为源文件,您应该更改:

      ln -s /Users/myname/code/myApp/storage/app /Users/myname/code/myApp/public/storage
      

      到:

      ln -s /Users/myname/code/myApp/storage/app/public /Users/myname/code/myApp/public/storage
      

      或者您可以使用storage:link Artisan 命令:

      php artisan storage:link
      

      然后,您可以使用 asset 帮助器创建一个 URL:

      <img src="{{ asset('storage/file.txt') }}" />
      

      【讨论】:

      • 这样做&lt;img src="{{ asset('storage/' . $imageValue-&gt;image) }}" /&gt; 没有奏效,尽管它是正确的路径。
      • @35Hunne $imageValue-&gt;image 是否包含后缀?
      【解决方案3】:

      看来您的链接不正确。应该是

      storage/app/public -> public/storage
      

      (您错过了 public 部分)。为了避免目录错误,您应该使用特殊的Artisan command:

      php artisan storage:link
      

      【讨论】:

      • 这样做&lt;img src="{{ asset('storage/' . $imageValue-&gt;image) }}" /&gt; 没有奏效,尽管它是正确的路径。
      • @35Hunne 你的变量$imageValue-&gt;image 包含什么?
      猜你喜欢
      • 2021-05-17
      • 2017-12-31
      • 2019-01-11
      • 1970-01-01
      • 2018-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-12
      相关资源
      最近更新 更多