web-dev-qa-db-ja.com

Laravel 5-RouteCollection.php行143のNotFoundHttpException

私はこのエラーを受け取ります:

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

私は本当に何が問題なのか理解していません。次のコマンドを実行します。

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

何も機能しませんでした。

Laravelのインストールはサブディレクトリ(public_html/ecodryer)の下にあり、パブリックディレクトリへのポインタは.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>

ルートファイル:

<?php

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

助言がありますか?

先に感謝します!

8
Chen Alon

これはroutes.php宣言の問題です。アクセスしようとしているURLのルートを必ず定義してください。例えば:

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

より詳細な構文は、Laravelウェブサイト: http://laravel.com/docs/5.1/routing にあります。

編集:

Routes.phpに基づいて、そのように反映するようにルートを変更します。

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

この種の問題は、urlがlocalhost/project/。ローカルプロジェクトの仮想ホストを作成してみてください。また、いくつかの追加の利点があります。 wampで仮想ホストを作成する方法

3
Eranda

この種の問題には、index.phpが付随する場合があります。次の方法でルートをテストします。

route/index.php

または

yourdomain/public/Route/index.php

apacheと仮想ホストを設定することにより、URLからindex.phpを削除できます。 このリンク はあなたを助けることができます。

0
H.R.Taleghani

laravelバージョン5.4.10(または@Chen Alonが言及した5.3以降)で同様のエラーが発生している人のために、routes.phpファイルはデフォルトで削除されています。ファイルを作成するだけでは不十分です。「map」関数内のRouteServiceProvider.phpファイルにファイルを含める必要があります。

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

/projectname/routes/web.phpの下にある必要があります

0
Nagarjuna