2014-10-21 3 views
0

Я новичок в laravel, я установил laravel, используя композитор на моем Linux-сервере, проблема в том, что я не смог получить доступ к доменуname.com, а domainname.com/public/, тогда только я может получить доступ к странице. Просьба предложить мне, как получить доступ к сайту с помощью domainname.com/ вместо domainname.com/public/Как получить доступ к прямому пути Laravel

Выполняется на общем хостинге, поэтому есть несколько доменных имен с папками.

+0

Я предполагаю, что у вас нет прямого доступа к вашей машине? (через ssh) – lukasgeiter

+0

@lukasgeiter: да, я имею SSH-доступ –

+0

Хорошо. Затем вы можете либо создать/отредактировать виртуальный хост (см. Ответ gmarintes), либо изменить корень документа в файле httpd.conf. Это зависит от того, как вы настроились. – lukasgeiter

ответ

1

Во-первых, убедитесь, что ваш модуль переписан включен. В вашем случае, хостинг-провайдеры часто позволяют это для вас.

Во-вторых, создайте файл .htaccess в вашей домашней папке (папка содержит файл artisan) с этим контентом.

<IfModule mod_rewrite.c> 
Options +FollowSymLinks 
RewriteEngine On 
</IfModule> 
# For all files not found in the file system, reroute the request to the 
# "index.php" front controller, keeping the query string intact 
<IfModule mod_rewrite.c> 
RewriteCond $1 !^(public) 
RewriteRule ^(.*)$ /public/$1 [L] 
</IfModule> 
+0

Спасибо, это помогло мне разобраться в проблеме :-) –

1

Вы должны добавить <VirtualHost> в конфигурации Apache:

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    DocumentRoot /path/to/your/laravel/public 
    ServerName your.domain.com 

    <Directory /path/to/your/laravel/public> 
     AllowOverride None 
     Order allow,deny 
     Allow from All 

     Options FollowSymLinks 

     RewriteEngine On 

     RewriteCond %{REQUEST_FILENAME} !-f 
     RewriteCond %{REQUEST_FILENAME} !-d 
     RewriteRule ^(.*)$ index.php/$1 [L] 
    </Directory> 
</VirtualHost> 

Затем вы можете получить доступ к сайту Laravel как: http://your.domain.com/

+0

Надеюсь, что это не подходит для совместного использования. –