In this post I am going to tell you how can we remove public
folder which comes in the URL of Laravel website when it is used to upload on web hosting.To remove this folder, there are 2 ways.1st one is to update some code into .htaccess
file of hosting so following is the code which needs to be updated into .htaccess
file.
Solution 1
.htaccess File
<IfModule mod_rewrite.c> <IfModule mod_negotiation.c> Options -MultiViews </IfModule> RewriteEngine On RewriteCond %{REQUEST_FILENAME} -d [OR] RewriteCond %{REQUEST_FILENAME} -f RewriteRule ^ ^$1 [N] RewriteCond %{REQUEST_URI} (\.\w+$) [NC] RewriteRule ^(.*)$ public/$1 RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ server.php # Use PHP7 as default AddHandler application/x-httpd-php73 .php
Solution 2
By Editing index.php file
After uploading the files into root directory of your web hosting goto public
folder under root directory and move index.php
file to root directory and edit the following code of line.
if (file_exists($maintenance = __DIR__.'/../storage/framework/maintenance.php')) { require $maintenance; } require __DIR__.'/../vendor/autoload.php';
You need to remove /..
from above lines of code and after removing these symbol, it will look like following.
if (file_exists($maintenance = __DIR__.'/storage/framework/maintenance.php')) { require $maintenance; } require __DIR__.'/vendor/autoload.php';
So this was about to remove public folder from URL.I hope you got all which is explained by me.
Ravindra is a passionate full stack developer and dedicated blogger with a flair for crafting user-friendly web applications and insightful articles. With expertise spanning front-end and back-end technologies, Ravindra brings ideas to life through innovative coding solutions.