Option 1: utiliser .htaccess
S'il n'y est pas déjà, créez un fichier .htaccess dans le répertoire racine de Laravel. Créez un .htaccessfichier dans votre répertoire racine Laravel s'il n'existe pas déjà. (Normalement, c'est sous votre public_htmldossier)
Modifiez le fichier .htaccess afin qu'il contienne le code suivant:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
Vous devriez maintenant pouvoir accéder au site Web sans la partie "/public/index.php/".
Option 2: déplacer des éléments du répertoire '/ public' vers le répertoire racine
Créez un nouveau dossier dans votre répertoire racine et déplacez tous les fichiers et dossiers à l'exception du dossier public. Vous pouvez l'appeler comme vous le souhaitez. J'utiliserai "laravel_code".
Ensuite, déplacez tout hors du répertoire public et dans le dossier racine. Cela devrait aboutir à quelque chose de similaire à ceci:

Après cela, tout ce que nous avons à faire est de modifier les emplacements dans le laravel_code/bootstrap/paths.phpfichier et le index.phpfichier.
Dans laravel_code/bootstrap/paths.phprecherchez la ligne de code suivante:
'app' => __DIR__.'/../app',
'public' => __DIR__.'/../public',
Et changez-les en:
'app' => __DIR__.'/../app',
'public' => __DIR__.'/../../',
Dans index.php, trouvez ces lignes:
require __DIR__.'/../bootstrap/autoload.php';
$app = require_once __DIR__.'/../bootstrap/start.php';
Et changez-les en:
require __DIR__.'/laravel_code/bootstrap/autoload.php';
$app = require_once __DIR__.'/laravel_code/bootstrap/start.php';
Source: Comment supprimer / public / de l'URL dans Laravel
mod_rewriteest activé.