鍍金池/ 問答/HTML5  PHP  C/ laravel禁止直接訪問storage下某目錄的文件

laravel禁止直接訪問storage下某目錄的文件

例如我在laravel項(xiàng)目中有這樣一個(gè)文件 /storage/app/public/report/1/14.pdf,通過php artisan storage:link 命令,可以直接使用http://domain/storage/report/... 這樣進(jìn)行訪問,但是因?yàn)檫@個(gè)pdf有特殊性,只能屬于這個(gè)用戶才能看到,比如如果我的用戶id為1(對應(yīng)report后的參數(shù)1),那我就能讀取14.pdf。如果我用戶id為2,那我就不能讀取到這個(gè)文件應(yīng)該怎么實(shí)現(xiàn)?
我可能希望能夠類似于這種結(jié)果,不能使用http://domain/storage/report/... 這種直接訪問文件的方法,必須通過http://domain/report/1/14 這種方式來訪問pdf文件

回答
編輯回答
不討喜

可以在report路由對應(yīng)的控制器里面返回下載響應(yīng)

response()->download(storage_path('app/public/report/1/14.pdf'));

2018年6月8日 08:14