Laravel -不工作路由


Laravel - doesn't work routing

我在我的本地主机上安装了Laravel(如果重要的话,在Ubuntu上)。

Route::get('/', function () {
    $tasks = Task::orderBy('created_at', 'asc')->get();
    return view('layouts/tasks', [
        'tasks' => $tasks
    ]);
});

我有这样的路由,它在localhost/public/

但是如果我尝试用这样的路由创建像localhost/public/test这样的新页面:

Route::get('/test', function () {
    $tasks = Task::orderBy('created_at', 'asc')->get();
    return view('layouts/tasks', [
        'tasks' => $tasks
    ]);
});

它返回:

404 (The requested URL /public/test was not found on this server.) 

此外,我尝试了/test/, test &/public/test和这些都不起作用

创建另一个路由,并简单地放入return语句来检查它是否有效。如果你得到另一个404,你的。htaccess文件可能没有生效。

你需要在虚拟主机中为你的DocumentRoot启用AllowOverride All。

类似以下语句的内容:

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

将AllowOverride改为All或添加。