Opção 1: use .htaccess
Se ainda não estiver lá, crie um arquivo .htaccess no diretório raiz do Laravel. Crie um .htaccess
arquivo no diretório raiz do Laravel, se ainda não existir. (Normalmente está na sua public_html
pasta)
Edite o arquivo .htaccess para que contenha o seguinte código:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
Agora você deve conseguir acessar o site sem a parte "/public/index.php/".
Opção 2: Mova as coisas do diretório '/ public' para o diretório raiz
Crie uma nova pasta em seu diretório raiz e mova todos os arquivos e pastas, exceto a pasta pública. Você pode chamá-lo do que quiser. Vou usar "laravel_code".
Em seguida, mova tudo do diretório público para a pasta raiz. Deve resultar em algo semelhante a este:
Depois disso, tudo o que precisamos fazer é editar os locais no laravel_code/bootstrap/paths.php
arquivo e no index.php
arquivo.
Em laravel_code/bootstrap/paths.php
encontrar a seguinte linha de código:
'app' => __DIR__.'/../app',
'public' => __DIR__.'/../public',
E altere-os para:
'app' => __DIR__.'/../app',
'public' => __DIR__.'/../../',
Em index.php
, encontre estas linhas:
require __DIR__.'/../bootstrap/autoload.php';
$app = require_once __DIR__.'/../bootstrap/start.php';
E altere-os para:
require __DIR__.'/laravel_code/bootstrap/autoload.php';
$app = require_once __DIR__.'/laravel_code/bootstrap/start.php';
Fonte: Como remover / public / da URL no Laravel
mod_rewrite
está ativado.