Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 17.03.2016 13:03:11

Как убрать public из адреса?

Опубликовал сайт на хостинге.
Прописал такое вот в корневом файле htaccess,
RewriteEngine On
DirectoryIndex /public/index.php
#RewriteRule ^(.+) $1 [L]
#RewriteCond %{DOCUMENT_ROOT}/public%{REQUEST_URI} -f
#RewriteRule ^(.+) /public/$1 [L]
RewriteRule ^$ public/ [L]
RewriteRule (.*) public/$1 [L]


В файле папке public в файле htaccess прописано такое
<IfModule mod_rewrite.c>
    Options +SymLinksIfOwnerMatch
    RewriteEngine On
    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]
    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

Сейчас все отлично работает и без public, но с public  тоже работает и все страницы сайта таким образом дублируются. Вопрос в том как отключить дублирование адресов с public. ?!?

Не в сети

#2 17.03.2016 13:23:34

Artdevue
Откуда: Kiev
Сообщений: 119
Сайт

Re: Как убрать public из адреса?

а зачем вы устанавливали Laravel в публичную директорию? Безопасность для Вас не важная? Установите нормально, и не нужно "чудить" будет.


If you think it’s expensive to hire a professional to do the job, wait until you hire an amateur.

Не в сети

#3 17.03.2016 14:08:37

Re: Как убрать public из адреса?

Не понял что вы имеете ввиду. поясните пожалуйста.

Не в сети

#4 17.03.2016 14:56:25

xelam
writerПисарь
Откуда: Москва
Сообщений: 50
Статей: 2

Re: Как убрать public из адреса?

Laravel надо класть выше папки public, чтобы папка public на сервере была папкой public у фреймворка.

Не в сети

#5 17.03.2016 15:16:25

Re: Как убрать public из адреса?

мой хостинг не даёт такую возможность, класть что-либо выше публичной папки

Не в сети

#6 17.03.2016 15:32:10

duster
Откуда: Мельбурн
Сообщений: 148

Re: Как убрать public из адреса?

Тогда закройте хотя бы право на чтение на все остальные папки через .htaccess

Не в сети

#7 17.03.2016 15:34:59

Artdevue
Откуда: Kiev
Сообщений: 119
Сайт

Re: Как убрать public из адреса?

Romannnn пишет:

мой хостинг не даёт такую возможность, класть что-либо выше публичной папки

Странный хостинг и я бы не рискнул на таком хостинге разворачивать сайт. SSH тоже нет? Composer?

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


If you think it’s expensive to hire a professional to do the job, wait until you hire an amateur.

Не в сети

#8 17.03.2016 16:37:08

xelam
writerПисарь
Откуда: Москва
Сообщений: 50
Статей: 2

Re: Как убрать public из адреса?

Romannnn пишет:

мой хостинг не даёт такую возможность, класть что-либо выше публичной папки

очень странно, тогда рекомендую сменить на laravel-hosting()ru
полная поддержка laravel, даже алиесы для команд есть

Не в сети

#9 23.08.2016 16:53:08

absorb

Re: Как убрать public из адреса?

Artdevue пишет:

а зачем вы устанавливали Laravel в публичную директорию? Безопасность для Вас не важная? Установите нормально, и не нужно "чудить" будет.

у laravel есть директория public, вероятно, ТС говорит об этой папке. изначально, при установке ссылка такая получается http://localhos/public/

#10 23.08.2016 21:19:38

Re: Как убрать public из адреса?

  1. при установке ссылка такая получается http://localhos/public/

Потому что Laravel не предназначен просто для сценария «распаковал и забыл» (по-хорошему, сегодня такой сценарий использоваться и в других местах не должен) — нужно как минимум выставить DocumentRoot (если Apache) в …/public, тогда будет http://localhost.

Не в сети

Подвал раздела