Metti tutti i sorgenti in una sottocartella di public chiamata "sources" .

All'interno di questa sottocartella ci metti un .htaccess con:

codice:
deny from all
Poi sposti il contenuto di sources/public direttamente in public

Modifichi il file public/index.php in modo da farlo puntare ai sorgenti nella cartella sources

Nel metodo boot() dell'AppServiceProvider metti:

codice:
      app()->bind('path.public', function () {
            return base_path() . '/../';
        });
In sources/config/filesystems.php metti:

codice:
    'links' => [
        base_path() . '/../storage' => storage_path('app/public'),
    ],
Infine lancia il comando artisan storage:link

Dovrebbe essere tutto.