2016-08-19 32 views
1

我使用cPanel設置了laravel 5.2站點。Laravel 5.2一直在主頁上只顯示公衆URL

我有指向「公共」,該網站正在工作的域根。

但是,對於主頁/索引頁面,它不斷在URL中顯示public,並且出現頁面未找到錯誤。

所以我預期的URL我進入www.example.com而且如果我瀏覽到一個預期的頁例如與www.example.com/public

出現www.example.com/production頁面顯示正確,url正確顯示

我已經在homestead中正確地運行了該網站,並且我創建了另一個網站,並且工作正常 - 只是無法解決這個問題!

這裏是我的.htaccess的內容:

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

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> 

這是標準的設立

非常困惑 - 缺少了什麼 - 我該怎麼測試?

回答

0

您需要point web server to a public directory並重新啓動它。

的VH的一個例子:

DocumentRoot "/path_to_aravel_project/public" 
<Directory "/path_to_aravel_project/public"> 
+0

嗨 - 是的,我已經做了,當提到,它是從公用文件夾 – Ray

0

我猜你需要添加額外的行成.htaccess文件

RewriteCond %{REQUEST_FILENAME} !-d 

所以完整的代碼將

<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] 

+0

HI-我正確地拉覺得我已經有這個選項?我需要複製嗎? – Ray

+0

你使用子域還是域名? –

+0

您可以複製粘貼我的代碼,並嘗試或按照這裏:http://stackoverflow.com/a/32580688/1960558 –

0

試試這個,從公共移動的index.php到項目的根目錄

修改的index.php作爲

require __DIR__.'/bootstrap/autoload.php'; 

require __DIR__.'/bootstrap/autoload.php';