Нужен перевод, дайте знать!

Редирект htaccess на папку public в Laravel

Vector Sketch Photoshop Action

Превращает вашу фотографию в векторную композицию
Экшен

Сегодня хочу поделиться с вами секретом, как можно настроить корневой каталог вашего веб-сервера так, чтобы он указывал на public каталог проекта. И чтобы при этом, не отображалось слово public в адресной строке браузера вашего проекта работающего на платформе Laravel.

Чтобы нам сделать редирект корневого каталога веб-сервера на каталог public, а также удалить слово public из адресной строки, нам необходимо сделать 2 простых шага:

01.

Первый способ

Переименовываем файл server.php

Первым шагом, нам необходимо найти файл server.php, (он расположен в корневой директории проекта Laravel) и переименовать его в index.php.

Обновляем .htaccess

Вторым шагом, необходимо перейти в папку public и скопировать файл .htaccess в корневую директорию проекта. После того как скопировали, необходимо открыть его редактором кода и очистить от всего содержимого что там находится. И уже в очищенный файл .htaccess вставить код следующего содержания:

Options -MultiViews -Indexes
 
RewriteEngine On

# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]

# Handle Front Controller...
RewriteCond %{REQUEST_URI} !(\.css|\.js|\.png|\.jpg|\.gif|robots\.txt)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/public/
RewriteRule ^(css|js|images)/(.*)$ public/$1/$2 [L,NC]

После чего сохраняем, и проверяем проект на работоспособность.

02.

Второй способ

Создаем файл .htaccess в корне сайта

Если первый вариант вам не подошел, то воспользуйтесь вторым вариантом. Для этого необходимо создать файл .htaccess в корневом каталоге вашего сайта на хостинге, и прописать следующий код:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^(.*)$ public/$1 [L]
</IfModule>

После чего, все это дело необходимо сохранить.

На этом у меня все! Если у вас остались вопросы, то вы можете задать их в комментариях к данному посту.

Мы будем рады вашему мнению

Оставить отзыв

LINKOZ.RU
Logo
Корзина покупок