Laravel - Jak zablokować dostęp do folderu public/storage ?

0

Czy istnieje jakiś sposób, aby zablokować dostęp do pliku, który jest w folderze public/storage? Bo każdy se może do niego wejść bezpośrednio wpisując poprawne url. Próbowałem zrobić middleware, ale się nie udało :(
web.php

Route::get('/storage/upload/{filename}', '[email protected]')->middleware(show.image);

Middleware

if(true == true)
      {
        return redirect('/');
      }
        return $next($request);
    }
1

Nie zapisuj plików do public?
Sama nazwa katalogu powinna dać Ci coś do myślenia :-P

A middleware nie sprawdza się w tym przypadku, ponieważ odwołania do plików statycznych (typu obrazy itd.) przeważnie nie przechodzą w ogóle przez Laravela (obsługuje je bezpośrednio Apache / nginx).

0

Dziękuję za poradę. Zapisywałem pliki w public, bo myślałem, że będzie jakaś możliwość ograniczenia do nich dostępu, a jednak nie ma.

1

ewentualnie z htaccess:

<Files .htaccess>
Deny from all
</Files>

lub

<Directory /wazne_pliki/>
Deny from all
</Directory>
2

Zaraz zaraz zaraz, w laravelu masz folder storage specjalnie do takich rzeczy przygotowany, jest na tym samym poziomie co public przez co przez url nie ma jak się tam dostać bo docroot powinien być public no i trzeba pamiętać o odpowiednich chmodach

1 użytkowników online, w tym zalogowanych: 0, gości: 1