2015-11-19 123 views
6

已经看过以前的文章,但没有运气。我刚刚通过作曲家安装了Laravel 5.1。我一直在关注安装的官方文档,位于here。我没有使用宅基地,我也没有使用虚拟环境。虽然一切正常,但我无法在我的Web服务器上托管项目。虽然常规的PHP文件容易托管,并且可以通过我的本地主机访问,但通过本地主机访问Laravel的公共文件夹会给我一个500内部服务器错误。在教程之后,我的public/.htaccess文件具有以下内容。Ubuntu上的Laravel 5.1的Localhost错误14.04

Options +FollowSymLinks 
RewriteEngine On 

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

我的错误日志最近的条目如下。

[Thu Nov 19 22:25:10.012710 2015] [core:alert] [pid 6461] [client 127.0.0.1:43086] /var/www/html/blog/public/.htaccess: Options not allowed here

至于权限,我已经给我的Laravel应用程序的文件夹内的权限的所有文件和文件夹。我在我的机器上运行Apache/2.4.7(Ubuntu)和PHP 5.5.9-1ubuntu4.14。

如果您需要任何其他信息,请让我知道。任何帮助将不胜感激!

编辑:

问题解决了加在我的apache2.conf如下:

<Directory /> 
     AllowOverride All 
</Directory> 

谢谢大家。

回答

4

您一定错过了配置文件中的配置。最好的测试方法是从你的htaccess文件中删除这一行。

Options +FollowSymLinks 

然后试一试。

确保您的apache2.conf提供了所有选项。有时你有这样的事情

AllowOverride FileInfo AuthConfig Limit Indexes 

如果是这样的情况下,将其更改为

AllowOverride All

编辑:

因此,在你的.htaccess文件,你可以有。

DirectoryIndex index.php 
RewriteEngine On 

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

你说了什么,谢谢。但我仍然得到相同的内部服务器错误。日志现在显示“[Wed Nov 18 09:38:47.808742 2015] [autoindex:error] [pid 1747] [client 127.0.0.1:11626] AH01276:无法提供目录/ var/www/html/blog /:无匹配DirectoryIndex(index.html,index.cgi,index.pl,index.php,index.xhtml,index.htm)找到,以及由Options指令禁止的服务器生成的目录索引“ –

+2

这不是** ** **错误。它说的是完全不同的东西。所以看来你解决了AllowOverride All的第一个问题。现在尝试在.htaccess文件的顶部添加这个'DirectoryIndex index.php'。 –