Upload kısmında sadece Image formatına mı müsade ediyorsunuz ?
Bence eğer kullanıcıya bir dosya yüklemeye müsade ediyor ve o dosyaya erişmesine müsade ediyorsanız direk olarak hiç bir şekilde erişimine müsade etmeyin. Symbolic Link en büyük hata olmuş.
Eğer sadece Image formatlarına müsade ediyorsanız size Intervention Image paketini önerebilirim.
http://image.intervention.io/getting_started/introduction
Bana ne avantaj sağlar derseniz;
Resmi kullanıcıya eriştirmek için en basit haliyle
// open an image file
$img = Image::make('public/foo.jpg');
Mevcut resmi Image::make ile yeni bir resim oluşturmaya çalışırsanız hata dönecektir.