Laravel Pro Tips

Laravel Pro Tips

Storing Public and Private Files/Images in Laravel: A Comprehensive Guide

Learn how to manage files and images in Laravel for both public and private access, including setup on local servers and Amazon S3. Dive into streamlined Laravel file management.

Laravel Pro Tips's avatar
Laravel Pro Tips
Oct 14, 2023
∙ Paid
Share

landmark poster lot
Photo by Héctor J. Rivas on Unsplash

1. Using Local Server for Public File Storage

1.1. The /public Directory

Laravel's default spot for static assets like images is the public/ directory. Essentially, if a file is inside this folder, anyone can access it just by linking directly to it.

For instance, if you have an image named cat.jpg and you place it in public/images/, anyone can view this image using the link /images/cat.jpg.

Important: Make sure the root of your web server points to your Laravel project's public/ folder. This ensures that every file in this directory remains open to the public.

A quick tip: If you're using version control (like git), remember that adding files to the public/ directory might flag changes in your repository. This approach works best for static files that you don't plan to manage or modify often in your code.

1.2. Using the /storage/app/public Directory

Let's take an example: We have an image called cat.jpg and we want to place it in storage/app/public.

This post is for paid subscribers

Already a paid subscriber? Sign in
© 2025 Laravel Pro Tips
Privacy ∙ Terms ∙ Collection notice
Start writingGet the app
Substack is the home for great culture