我不仅是Laravel 4的新手,也是使用框架的新手。我以为我会从Laravel开始,因为它得到了如此好的评价。 我有一个很好的安装Laravel。我转到/ l4 / public并查看欢迎页面。
我正在尝试添加一条路线到routes.php,这样当我导航到/ l4 / public / articles时,我会收到回复。
我得到“在此服务器上找不到请求的URL / l4 / public / articles。”我是否需要运行工匠命令来编译路线?这可能很简单。为什么会这样留言?
routes.php文件
Route::get('/', function()
{
return View::make('hello');
});
Route::get('articles', function ()
{
//return View::make('articles');
return "Articles hello there";
});
答案 0 :(得分:44)
问题通过apache的httpd.conf文件中的两个编辑更改来解决。
AllowOverride None是默认值。 AllowOverride控制是否处理.htaccess文件。
默认情况下,mod_rewrite被注释掉了。
更改:
更改1:通过取消注释来激活mod_rewrite。
改变2:
更改
AllowOverride None
到
AllowOverride All
现在重启Apache ......
Laravel在公用文件夹中提供的默认.htaccess文件指定了一些mod_rewrite规则。由于AllowOverride设置为none,因此未应用这些规则。更改这些设置后,请确保并重新启动apache。 我的配置:Windows XP上的Apache 2.4.6。
似乎可能会对AllowOverride更改产生一些安全隐患。如果有人有这方面的其他信息,我想听听。
答案 1 :(得分:1)
该错误基本上说路由器无法找到您的请求。确保您已保存更改。 如果你使用artisan命令来运行页面,只需重新运行命令“artisan Serve”。
答案 2 :(得分:0)
你需要mod_rewrite。尝试:l4 / public / index.php / articles