我刚在Mac Yosemite的本地环境中安装了Laravel 5。我在一个目录中设置了Laravel,然后创建了一个Apache Virtual Host来指向该目录。
现在可以通过访问http://myproject.localhost.com
成功访问项目的根目录。但是,我没有看到Laravel欢迎屏幕。相反,我只看到一个空白的白页,我无法弄清楚原因。
Chrome在尝试加载域时显示500内部服务器错误。如果我尝试直接访问index.php文件,也会发生同样的事情:http://myproject.localhost.com/index.php
。
我想查看Laravel错误日志以查看问题所在,但这让我更加困惑,因为store/logs
目录为空。
我知道虚拟主机设置是正确的,因为当我将虚拟主机指向另一个不使用Laravel的项目时,它可以正常工作。此外,我之前收到vendor
目录中的权限错误,我已经解决了。我认为这是在欢迎页面正确加载之前需要修复的最后一个问题,但令我惊讶的是,我只看到一个空白的屏幕。
以前有没有人经历过这个?我能提供更多信息来帮助解决这个问题吗?
这是我的虚拟主机配置:
<VirtualHost *:80>
ServerAdmin webmaster@slopes.localhost.com
DocumentRoot "/Users/myusername/dev/slopes/public"
ServerName slopes.localhost.com
ErrorLog "/private/var/log/apache2/slopes.localhost.com-error_log"
CustomLog "/private/var/log/apache2/slopes.localhost.com-access_log" common
<Directory "/Users/myusername/dev/slopes/public">
Require all granted
AllowOverride All
</Directory>
</VirtualHost>
当我尝试在浏览器中访问index.php时,我在/private/var/log/apache2/slopes.localhost.com-access_log
中看到了请求,并显示了500响应。它不会在/private/var/log/apache2/slopes.localhost.com-error_log
中生成任何条目。
答案 0 :(得分:0)
我做了同样的事情(也是优胜美地),这是我的问题的解决方案,也许它也是你的。 编辑public / .htaccess,注释以下行:
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
到
#<IfModule mod_negotiation.c>
# Options -MultiViews
#</IfModule>
检查它是否有效。
编辑:检查你的httpd-vhosts.conf文件,它看起来像这样吗?
<VirtualHost *:80>
ServerAdmin you
ServerName www.myproject.localhost.com
ServerAlias myproject.localhost.com
DocumentRoot "/path/to/webfolder/laravel/public"
ErrorLog "/private/var/log/apache2/dummy-host2.example.com-error_log"
CustomLog "/private/var/log/apache2/dummy-host2.example.com-access_log" common
</VirtualHost>
检查你的ErrorLog,如果你没有它,添加它,必须有一些东西,因为Apache正在抛出500。另外,请仔细检查您是否将根指向public/
文件夹
编辑:聊天(http://chat.stackoverflow.com/rooms/73694)之后,@ Kyslik发现缺少了mcrypt扩展程序,引导了一个新的php和mcrypt通过brew安装。然后获得storage/
的许可并且它有效。