2016-06-02 14 views
0

Ich bin ziemlich neu zu Laravel und ich arbeite derzeit an einem Projekt, das Dateien auf dem Server speichern muss. Was es zu tun ist, speichern Sie es unter public/docs das Problem ist, dass die Dateien unter diesem Verzeichnis die ganze Zeit zugänglich ist, da sie die URL zu der bestimmten Datei kennen. beispielsweise auch dann, wenn sie abgemeldet werden, wenn sie diese URL http://localhost/dummy/public/uploads/docs/2016-06-02-10-52-43-oth-content-inventory-and-planning-spreadsheet.pdf wissen würden sie in der Lage sein, es zu greifen, was im Denken so etwas wie diese in meinen Routen zu tun ist, ich so etwas wieZugriff auf öffentlichen Ordner in Laravel beschränken 4.2

Route::any('uploads/docs/' , 'go to some controller to check if user can acces'); 

ist dies möglich machen würde? Danke im Voraus!

Antwort

1

es aus einem Grund genannt öffentlichen ...

Sie Speicher statt (Laravel 5) in Speicherzugriff nicht, actualy das Gegenteil Sie beschränken verwenden sollte, gewähren Sie Zugriff auf die Datei.

versuchen, dies für Laravel 4.2 (verschieben Sie die Datei nach dem Hochladen so zu einem Speicherordner)

Input::file('file')->move(__DIR__.'/storage/',Input::file('file')->getClientOriginalName()); 
    }); 

Auf jeden Fall ist die Schlussfolgerung, dass Sie keinen Zugriff einschränken können (Sie sollten nicht einmal, wenn es ein Weg), weil es öffentlich sein soll! Also sollten Sie den Speicherordner (oder was auch immer in Laravel 4 genannt wird) verwenden

+0

hi! Danke für diese Einsicht wird das hier ausprobieren. – BourneShady

Verwandte Themen