2015-04-01 197 views
0

我的laravel 5項目在localhost上運行良好。將項目移動到服務器後,顯示內部服務器錯誤。移到服務器後Laravel 5內部服務器錯誤

錯誤消息

The server encountered an internal error or misconfiguration and was unable to complete your request. 

我檢查的要求。所有要求都是正確的。

PHP = 5.5 
Mcrypt PHP Extension = Enabled 
OpenSSL PHP Extension = Enabled 
Mbstring PHP Extension = Enabled 
Tokenizer PHP Extension = Enabled 

兩個的.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> 

我測試通過刪除這兩個文件.htaccess,但它仍然顯示內部服務器錯誤。

我該如何解決這個問題?有什麼建議麼 ?

+0

檢查服務器日誌,看看錯誤實際是什麼...... – Laurence 2015-04-01 06:34:17

+0

檢查'index.php'文件的權限,我的意思是將其設置爲755或777 – manix 2015-04-01 07:20:57

+0

和......記得將'777'設置爲'storage/'文件夾也是 – manix 2015-04-01 07:21:55

回答

0

檢查是否啓用了mod_negotiation。我剛剛有同樣的問題

0

我在遷移共享服務器時遇到同樣的問題。對我有用的解決方案如下。

假設有laravel文件夾叫做test其中包含laravel的文件夾結構。

我有使用2個不同的.htaccess文件

1)一個在(安裝)laravel,即根文件夾隨着與如下內容test文件夾。

RewriteEngine On 
RewriteCond %{REQUEST_URI} !^test/public 
RewriteRule ^(.*)$ test/public/$1 [L] 

2)公共文件夾中的一個,即內部test/public,內容如下。

Options +FollowSymLinks 
RewriteEngine On 

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

它爲我工作。