ホームページ > バックエンド開発 > PHPチュートリアル > Laravelビューでストレージイメージにアクセスするにはどうすればよいですか?

Laravelビューでストレージイメージにアクセスするにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-26 11:25:09
オリジナル
330 人が閲覧しました

How Can I Access Storage Images in Laravel Views?

Laravel ビューでのストレージ イメージへのアクセス

Laravel ストレージに保存されているアップロードされたイメージを操作する場合、それらのイメージをビューに表示するのが難しい場合があります。サーバーはリクエストを /public にルーティングするため、/storage に保存されているイメージにアクセスするには解決策が必要です。

シンボリック リンク

推奨されるアプローチは、/ の間にシンボリック リンクを作成することです。 public/storage と /storage/app/public。このコマンドは、Laravel バージョン 5.3 以降で使用できます:

php artisan storage:link
ログイン後にコピー

これにより、次のようなパスを使用して /storage/app/public 内のファイルにアクセスできるシンボリックリンクが作成されます:

http://somedomain.com/storage/image.jpg
ログイン後にコピー
ログイン後にコピー

閉鎖ルート

シンボリック リンクの作成がオプションでない場合は、画像を読み取って提供するためのクロージャ ルートを定義できます:

Route::get('storage/{filename}', function ($filename) {
    $path = storage_path('public/' . $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;
});
ログイン後にコピー

次のパスを使用して画像にアクセスします:

http://somedomain.com/storage/image.jpg
ログイン後にコピー
ログイン後にコピー

警告

ファイルを手動で提供すると、サーバー側での処理に比べてパフォーマンスが低下します。ただし、このアプローチは、保護されたファイルやシンボリック リンクを作成できない環境では便利です。

以上がLaravelビューでストレージイメージにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート