In this article, i will share with you how to make secure and protect your file in laravel and only allow to access authenticated users.
As you know when you work with any web applications then the file uploading functionality is the most important part in that application and also you need to make sure that uploaded files very important to secure from direct access from URL. so, in this article, we will see how to protect and secure files in laravel and only accessible to authenticated users.
You just need to follow the steps.
First, we need to create a controller by running the following artisan command in your laravel application root directory.
php artisan make:controller FileController
then open /app/Http/Controllers/FileController.php
the file and add the following code to it.
namespace App\Http\Controllers;
class FileController extends Controller
{
public function __construct()
{
$this->middleware('auth');
}
public function view($id)
{
$file = storage_path('app/pdfs/') . $id . '.pdf';
if (file_exists($file)) {
$headers = [
'Content-Type' => 'application/pdf'
];
return response()->download($file, 'Test File', $headers, 'inline');
} else {
abort(404, 'File not found!');
}
}
}
Route::get('/preview-file/{id}', '[email protected]');
i hope you like this small article.
Hi, My name is Harsukh Makwana. i have been work with many programming language like php, python, javascript, node, react, anguler, etc.. since last 5 year. if you have any issue or want me hire then contact me on [email protected]
Laravel Eloquent Has One Through Relationship Tutorial with Example
Laravel provides eloquent relationship w...How to Check If the Mouse is Over an Element in jQuery
Use the CSS :hover Pseudo-class You c...PHP Check if string is valid url Code Example
When I was working with one Payment gate...How to make HTTP requests in Node.js
There are so many packages available to...How to Get the ID of the Element that Fired an Event in jQuery
Use the event.target Property You can...