How to Remove Public from URL in Laravel 11?
Teams applying “How to Remove Public from URL in Laravel 11?” in a production project can use this reference page to record implementation, review and debugging time, then compare that effort with tests and shipped functionality instead of treating activity as performance by itself.
Before copying the example into a live application, confirm version-specific behaviour with the official Laravel website and test it against the project’s actual database and runtime.
Hi, Dev
In this guide, we will learn how to remove "public" from the URL in a Laravel 11 application using the .htaccess file.
When deploying a Laravel app on shared hosting, we often face the issue of the "public" folder appearing in the URL because we can't set the path to index.php directly. However, we prefer a cleaner URL without "public". In this guide, I will provide you with two solutions to remove "public" from the URL in a Laravel application.
I will suggest you don't have to use "shared hosting" for the laravel application and never go for this solution.
Solution 1: Laravel Remove Public From URL using .htaccess
In Laravel, the .htaccess file can be generated and edited to incorporate new changes. The .htaccess file is located in the root directory, and its modification requires mod_rewrite to be enabled on your Apache server. It is mandatory to enable the rewrite module to implement these changes. Moreover, you need to activate .htaccess in Apache virtual host to use it in Laravel.
Finally, Just go to root folder and create .htaccess file and upload with following code
.htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
Solution 2: Rename server.php and Move .htaccess File
To remove "public" from your Laravel URL, you need to complete the following two steps:
1. Rename the server.php file in your Laravel root folder to index.php.
2. Copy the .htaccess file located in the /public directory to your Laravel root folder.
3. All public folder css and js file move to root folder.
- How to Notifications With database Driver in Laravel 11?
- How to Send Email Via Notification in Laravel 11?
- How to Install and Configure Laravel 11 Debugbar?
- How to Like Dislike System in Laravel 11?
- How to Paginate a Model with Relationship in Laravel 11?
- Laravel 11 Upload Files to Amazon S3 Example
- Laravel 11 Send WhatsApp Messages Example
- Laravel 11 Rest API Authentication Using JWT Tutorial