Варіант 1: Використовуйте .htaccess
Якщо його ще немає, створіть файл .htaccess у кореневому каталозі Laravel. Створіть .htaccess
файл у своєму кореневому каталозі Laravel, якщо він ще не існує. (Зазвичай це знаходиться у вашій public_html
папці)
Відредагуйте файл .htaccess так, щоб він містив такий код:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
Тепер ви повинні мати доступ до веб-сайту без частини "/public/index.php/".
Варіант 2: Перемістіть речі в каталозі '/ public' у кореневий каталог
Створіть нову папку у своєму кореневому каталозі та перемістіть усі файли та папки, крім загальної. Ви можете назвати це як завгодно. Я буду використовувати "laravel_code".
Далі перемістіть все із загальнодоступного каталогу у кореневу папку. Це має призвести до чогось подібного до цього:
Після цього нам залишається лише відредагувати розташування у laravel_code/bootstrap/paths.php
файлі та index.php
файлі.
В laravel_code/bootstrap/paths.php
знайти наступний рядок коду:
'app' => __DIR__.'/../app',
'public' => __DIR__.'/../public',
І змінити їх на:
'app' => __DIR__.'/../app',
'public' => __DIR__.'/../../',
В index.php
, знайти такі рядки:
require __DIR__.'/../bootstrap/autoload.php';
$app = require_once __DIR__.'/../bootstrap/start.php';
І змінити їх на:
require __DIR__.'/laravel_code/bootstrap/autoload.php';
$app = require_once __DIR__.'/laravel_code/bootstrap/start.php';
Джерело: Як видалити / загальнодоступну / з URL-адреси в Laravel
mod_rewrite
ввімкнено.