Не удается получить доступ к каталогу хранилища Laravel - PullRequest
0 голосов
/ 13 декабря 2018

Я использую Laravel 5.7.На моем локальном хосте мое хранилище работает нормально, и все изображения также отображаются, но на моем хосте новые изображения не отображаются.

Я использую приведенный ниже код в файле blade.php:

{{ asset("storage/$slider") }}

На моем локальном хосте отображаются изображения:

localhost:8000/storage/sliders/HKeGwcvnXbjuiA6g9wsjnoqphJc5DGup78D92b4F.jpeg

На моем веб-сайте я не могу получить доступ:

http://mywebsite.com/storage/sliders/HKeGwcvnXbjuiA6g9wsjnoqphJc5DGup78D92b4F.jpeg

1 Ответ

0 голосов
/ 13 декабря 2018

Теперь я использую этот маршрут, и он работал:

Route::get('storage/sliders/{filename}', function ($filename)
{

    $path = storage_path('app/public/sliders/' . $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;
});

, если у вас есть другие подкаталоги, которые вы можете использовать:

Route::get('storage/{path}/{filename}', function ($path,$filename)
{

    $path = storage_path('app/public/'.$path.'/' . $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;
});
...