web-dev-qa-db-fra.com

Laravel 5 - NotFoundHttpException dans RouteCollection.php ligne 143

Je reçois cette erreur:

Sorry, the page you are looking for could not be found.

1/1
NotFoundHttpException in RouteCollection.php line 143:
in RouteCollection.php line 143
at RouteCollection->match(object(Request)) in Router.php line 746
at Router->findRoute(object(Request)) in Router.php line 655
at Router->dispatchToRoute(object(Request)) in Router.php line 631
at Router->dispatch(object(Request)) in Kernel.php line 229
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 139
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in VerifyCsrfToken.php line 50
at VerifyCsrfToken->handle(object(Request), object(Closure))
at call_user_func_array(array(object(VerifyCsrfToken), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in ShareErrorsFromSession.php line 54
at ShareErrorsFromSession->handle(object(Request), object(Closure))
at call_user_func_array(array(object(ShareErrorsFromSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in StartSession.php line 62
at StartSession->handle(object(Request), object(Closure))
at call_user_func_array(array(object(StartSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37
at AddQueuedCookiesToResponse->handle(object(Request), object(Closure))
at call_user_func_array(array(object(AddQueuedCookiesToResponse), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in EncryptCookies.php line 59
at EncryptCookies->handle(object(Request), object(Closure))
at call_user_func_array(array(object(EncryptCookies), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in CheckForMaintenanceMode.php line 42
at CheckForMaintenanceMode->handle(object(Request), object(Closure))
at call_user_func_array(array(object(CheckForMaintenanceMode), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103
at Pipeline->then(object(Closure)) in Kernel.php line 118
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 86
at Kernel->handle(object(Request)) in index.php line 64

Je ne comprends vraiment pas quel est le problème. J'exécute les commandes suivantes:

composer dump-autoload
php artisan clear-compiled
php artisan route:clear

Rien n'a fonctionné.

L'installation de Laravel est sous un sous-répertoire (public_html/ecodryer) et le pointeur vers le répertoire public est configuré par .htaccess:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_Host} ^landings.yaza.co.il/ecodryer$ [NC,OR]
RewriteCond %{REQUEST_URI} !ecodryer/public/
RewriteRule (.*) /ecodryer/public/$1 [L]
</IfModule>

Fichier d'itinéraire:

<?php

Route::get('/', function () {
    return view('pages.site.main');
});

Aucune suggestion?

Merci d'avance!

8
Chen Alon

Il s'agit d'un problème avec votre déclaration routes.php, assurez-vous d'avoir défini un itinéraire pour l'URL à laquelle vous essayez d'accéder. Par exemple:

Route::get('/', 'PageController@index');

Vous pouvez trouver une syntaxe plus détaillée sur le site Web Laravel: http://laravel.com/docs/5.1/routing

Éditer:

En fonction de votre routes.php - Modifiez votre itinéraire pour qu'il reflète comme tel:

Route::get('ecodryer', function () {
    return view('pages.site.main');
});
16
davsp

Parfois, ce type de problème vient de la structure des dossiers du serveur, comme l'URL, comme localhost/project/. Essayez de créer un hôte virtuel pour votre projet local. Cela donne également des avantages supplémentaires. Comment créer un hôte virtuel sur wamp

3
Eranda

Parfois, ce type de problème vient avec index.php . testez votre itinéraire en:

route/index.php

ou

votredomaine/public/Route/index.php

vous pouvez supprimer index.php de l'URL en configurant Apache et l'hôte virtuel. ce lien peut vous aider.

0
H.R.Taleghani

Pour ceux qui obtiennent une erreur similaire dans laravel version 5.4.10 (ou 5.3 en avant comme mentionné par @Chen Alon), le fichier routes.php a été supprimé par défaut et si vous souhaitez toujours utiliser il suffit ensuite de créer un fichier ne suffit pas. Nous devons inclure le fichier dans le fichier RouteServiceProvider.php à l'intérieur de la fonction "map". L'ajout de la ligne ci-dessous à l'intérieur de la fonction map a résolu le problème pour moi:

require app_path('Http/routes.php');
0
Varun Taliyan
Route::get('hello', 'Hello@index');

Il doit se trouver sous /projectname/routes/web.php

0
Nagarjuna