Maison > développement back-end > tutoriel php > Comment puis-je accéder aux images de stockage dans les vues Laravel ?

Comment puis-je accéder aux images de stockage dans les vues Laravel ?

Mary-Kate Olsen
Libérer: 2024-12-26 11:25:09
original
330 Les gens l'ont consulté

How Can I Access Storage Images in Laravel Views?

Accès aux images de stockage dans les vues Laravel

Lorsque vous travaillez avec des images téléchargées stockées dans le stockage Laravel, les afficher dans des vues peut présenter un défi. Étant donné que le serveur achemine les requêtes vers /public, l'accès aux images stockées dans /storage nécessite une solution.

Lien symbolique

L'approche recommandée consiste à créer un lien symbolique entre / public/stockage et /storage/app/public. Cette commande est disponible dans les versions 5.3 et ultérieures de Laravel :

php artisan storage:link
Copier après la connexion

Cela crée un lien symbolique vous permettant d'accéder aux fichiers dans /storage/app/public en utilisant des chemins tels que :

http://somedomain.com/storage/image.jpg
Copier après la connexion
Copier après la connexion

Itinéraire de fermeture

Si la création de lien symbolique n'est pas une option, vous pouvez définir un itinéraire de fermeture à lire et servir les images :

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;
});
Copier après la connexion

Accédez aux images en utilisant le chemin suivant :

http://somedomain.com/storage/image.jpg
Copier après la connexion
Copier après la connexion

Avertissement

La diffusion manuelle des fichiers entraîne une pénalité de performances par rapport à la gestion côté serveur. Cependant, cette approche est utile pour les fichiers protégés ou les environnements où les liens symboliques ne peuvent pas être créés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal