2016-05-16 6 views
2

Мне нужно развернуть проект Laravel в подпапку домена. У меня уже есть файлы в правильных местах, т. Е. Папка проекта на том же уровне, что и папка public_html, и я скопировал содержимое общей папки на public_html (ну, я написал symlink, чтобы сказать правду).Вложенная папка Laravel reroute .htaccess

У меня есть только одна проблема:

Если я иду в my-domain.com/proj-name, я могу видеть главную страницу без проблем.
Но когда я иду на страницу проекта my-domain.com/proj-name/about (к примеру), я получаю 404 Not Found: The requested URL /proj-name/about was not found on this server.

Я думаю, что решение заключается в редактировании RewriteRule на .htaccess, так что, когда я просматриваю к my-domain.com/proj-name/about, он удаляет proj-name как если он пытался получить доступ к my-domain.com/about.

Как это сделать?

Вот мой текущий .htaccess:

<IfModule mod_rewrite.c> 
    <IfModule mod_negotiation.c> 
     Options -MultiViews 
    </IfModule> 

    RewriteEngine On 

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

    # Handle Front Controller... 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule^index.php [L] 

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

ответ

-1

Вы должны сделать следующее:

RewriteCond %{REQUEST_URI} !^/proj-name/ 
RewriteRule ^(.*)$ proj-name/$1 [L] 

Примечание: выше должен идти в .htaccess, расположенной на public_html и не public_html/proj_name

+1

Я создал этот '.htaccess' at 'public_html', но он все еще не работает. Внутри 'public_html', помимо этого 2-строчного' .htaccess', у меня есть символическая ссылка, называемая 'proj_name', которая ведет к папке« public »Laravel. –

+0

Ваша символическая ссылка верна. Вы изменили '.htaccess' внутри' public' в исходное состояние? – user2094178

+0

«.htaccess» в папке «public» - это тот, который я опубликовал в своем вопросе (тот, который создается при создании проекта Laravel 5.2). –

Смежные вопросы