移动到服务器后,Laravel 5内部服务器出错

时间:2015-04-01 05:48:18

标签: .htaccess server laravel-5

我的laravel 5项目在localhost上运行良好。将项目移动到服务器后,它显示内部服务器错误。

错误消息

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文件进行了测试,但仍显示内部服务器错误。

我该如何解决这个问题?有什么建议吗?

2 个答案:

答案 0 :(得分:0)

检查是否启用了mod_negotiation。我刚才有同样的问题

答案 1 :(得分:0)

迁移共享服务器时遇到了同样的问题。对我有用的解决方案如下。

假设有一个名为test的laravel文件夹,其中包含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]    

它对我有用。