Laravel remove public (no need to rename server.php to index.php or copy anything from public folder)

1. Create .htaccess in Laravel root (outside public folder of laravel) as below:


<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


2. Go to /public directory and run:

rm storage


3. Go to Laravel root and run:

php artisan storage:link

 

Comments

Popular Posts