2016-07-03 22 views
1

Ich habe Laravel auf meinem localhost (auf Ubuntu, wenn es darauf ankommt).Laravel - funktioniert nicht routing

Route::get('/', function() { 
    $tasks = Task::orderBy('created_at', 'asc')->get(); 

    return view('layouts/tasks', [ 
     'tasks' => $tasks 
    ]); 
}); 

Ich habe solche Route und es funktioniert auf localhost/public/

Aber wenn ich versuche, neue Seite wie localhost/public/Test mit einem solchen Weg zu machen:

Route::get('/test', function() { 
    $tasks = Task::orderBy('created_at', 'asc')->get(); 

    return view('layouts/tasks', [ 
     'tasks' => $tasks 
    ]); 
}); 

Es Rückkehr me 404 (Die angeforderte URL/public/test wurde auf diesem Server nicht gefunden.) Ich versuche auch "/ test /", "test", "/ public/test" zu schreiben und es funktioniert auch nicht.

Danke!

+1

Verwenden Sie Apache oder NGINX? Du solltest zuerst dein/öffentliches Problem beheben. – bobbybackblech

+0

hast du 'mod-rewrite' aktiviert? –

Antwort

0

Machen Sie eine andere Route und geben Sie einfach eine return-Anweisung ein, um zu überprüfen, ob sie funktioniert. Wenn Sie einen weiteren 404 erhalten, wird Ihre .htaccess-Datei wahrscheinlich nicht wirksam.

Sie müssen AllowOverride All für Ihr DocumentRoot in Ihrem virtuellen Host aktivieren.

Etwas entlang der Linien von:

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

einfach Ihre AllowOverride auf Alle ändern oder hinzufügen.