2013-06-05 83 views
0

我无法在默认的apache安装上加载默认的laravel安装,因为我没有做太多的工作来配置它。在Laravel 4中没有页面加载

当我去我的域名我得到的第一laravel页..所以我说干就干,做了一个试验路线“你已经到了。”:

Route::get('about', function() { echo 'Hello World'; });

,当我去domain.net/about或domain.net/about.php都说页面无法显示。当我检查错误日志:

[周三6月5日十三点50分43秒2013] [错误] [客户123.456.12.9]文件不存在:/家庭/ XXX /的public_html /约

[ Wed Jun 05 13:50:57 2013] [error] [client 123.456.12.9] script'/home/xxx/public_html/about.php'找不到或无法统计

我使用的是默认htaccess文件,我也试过了laravel网站的其他版本。使用apache 2.2,安装了mcrypt的php 5.4 ..除此之外,我的apache配置非常默认,所以我假设它缺少一些重要的东西。

我已经检查过mod_rewrite是否已加载。

我试图去/索引,让页面无法显示,如果我去/index.php我得到的主页。

+0

嗯,'文件不存在:/ home/xxx/public_html/about'意味着它不会被重写到基本文件。你确定'.htaccess'文件被读取? (你至少需要['AllowOverride Fileinfo'](http://httpd.apache.org/docs/2.2/mod/core.html#allowoverride)OTOH) – Wrikken

+0

拯救生命!默认规则集是AllowOverride None,并且在任何时候都未启用。 我在httpd.conf中添加了以下内容: AllowOverride全部 Goodbytes

回答

0

这里奇怪的是“public_html”不正确。默认情况下,laravel使用“public”作为文件夹名称。

看看你的apache配置(虚拟主机),并确保它是正确的。

+0

公共文件夹有2个选项。您可以将DocumentRoot设置为/ public文件夹,或者您可以删除公用文件夹并将public_html之外的所有内容都删除。从Laravel文档:Laravel旨在保护您的应用程序代码和本地存储,只需将公用文件夹中必须公开的文件。建议您将公用文件夹设置为站点的documentRoot(也称为web根目录),或将公共内容放入站点的根目录,并将所有Laravel的其他文件放在Web根目录之外。 – Goodbytes