2016-03-21 86 views
1

我開始學習如何在vps上設置燈,並且我正在嘗試運行laravel項目。如何設置別名或VirtualHost在Apache2上運行laravel項目

這是我的000-default.conf

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    DocumentRoot /var/www/html 
    Alias /laravelproject /var/www/laravelproject/public 
    <Directory /var/www/> 
     Options Indexes FollowSymLinks MultiViews 
     AllowOverride All 
     Order allow,deny 
     allow from all 
    </Directory> 

我試圖使用/ laravelproject訪問和它的作品,因爲我重定向到一個登錄頁面的IP/laravelproject /登錄(比如我設置使用未記錄用戶的中間件,它適用於本地家園虛擬機)。但我有一個404文件未找到錯誤。不漂亮的設計laravel之一,但原始的和醜陋的服務器錯誤

未找到

所請求的網址/ laravelproject /登陸此服務器上找到。

的Apache/2.4.10(Ubuntu的)在'端口80

服務器當然,我沒有任何laravelproject.com域成立,我想簡單地用my_server_ip/laravelproject進行訪問。

我如何設置一個虛擬主機或別名來運行它與所有的路線工作?

回答

0

你需要確保/var/www/laravelproject/public目錄設置爲AllowOverride All(我相信你已經通過將/var/www設置爲All來處理)。然後確保.htaccess文件在你public目錄設置正確:https://github.com/laravel/laravel/blob/master/public/.htaccess

這是因爲Apache正在尋找/public/login/index.html這是不是一個文件。 Laravel的.htaccess適當地重定向這些請求,但它必須是在公用文件夾和Apache必須設置AllowOverride

編輯:

<Directory /var/www/laravelproject/public> 
    Options Indexes FollowSymLinks MultiViews 
    AllowOverride All 
</Directory> 
+0

的htaccess的是一樣的,你貼一個。問題正是你所說的。我試圖用index.php創建一個公共文件夾登錄,這就是它加載的內容 – GabAntonelli

+0

確定請參閱編輯。顯然,公共文件夾不允許覆蓋,所以把這個代碼放在apache配置文件中,並明確地允許該文件夾。 – Jeff

+0

我嘗試編輯/etc/apache2/apache2.conf中 「<目錄/ var/WWW /> 選項指標的FollowSymLinks 的AllowOverride所有 要求所有授予 < <目錄/ var/WWW/laravelproject /公> AllowOverride全部 ' – GabAntonelli

相關問題