Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich in Laravel-Ansichten auf Speicherbilder zugreifen?

Wie kann ich in Laravel-Ansichten auf Speicherbilder zugreifen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-26 11:25:09382Durchsuche

How Can I Access Storage Images in Laravel Views?

Zugriff auf Speicherbilder in Laravel-Ansichten

Bei der Arbeit mit hochgeladenen Bildern, die im Laravel-Speicher gespeichert sind, kann deren Anzeige in Ansichten eine Herausforderung darstellen. Da der Server Anfragen an /public weiterleitet, ist für den Zugriff auf in /storage gespeicherte Bilder eine Lösung erforderlich.

Symbolischer Link

Der empfohlene Ansatz besteht darin, einen symbolischen Link zwischen / zu erstellen. public/storage und /storage/app/public. Dieser Befehl ist in Laravel-Versionen 5.3 und höher verfügbar:

php artisan storage:link

Dadurch wird ein Symlink erstellt, der Ihnen den Zugriff auf Dateien in /storage/app/public über Pfade wie:

http://somedomain.com/storage/image.jpg

Schließungsroute

Wenn die Erstellung symbolischer Links keine Option ist, können Sie eine Schließungsroute zum Lesen definieren und stellen Sie die Bilder bereit:

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;
});
Greifen Sie über den folgenden Pfad auf die Bilder zu:

http://somedomain.com/storage/image.jpg

Warnung

Das manuelle Bereitstellen von Dateien verursacht eine Leistung Strafe im Vergleich zur serverseitigen Handhabung. Dieser Ansatz ist jedoch für geschützte Dateien oder Umgebungen nützlich, in denen keine symbolischen Links erstellt werden können.

Das obige ist der detaillierte Inhalt vonWie kann ich in Laravel-Ansichten auf Speicherbilder zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn