Laravelでルーティングを設定する方法!web.phpと基本ルートの書き方を初心者向けに徹底解説
生徒
「Laravelでページを表示させたいんですけど、まず何をすればいいですか?」
先生
「Laravelでは、まず“ルーティング”という設定をして、URLと処理をつなげる必要がありますよ。」
生徒
「ルーティングってなんだか難しそうです…」
先生
「大丈夫。わかりやすく説明するので、一緒に基本のルーティングを書いてみましょう!」
1. Laravelのルーティングとは?
Laravel(ララベル)では、Webアプリを動かすために欠かせない仕組みとしてルーティングがあります。これは、「どのURLにアクセスされたら、どんな処理を実行するのか」を決める、大事な入口のような役割を持っています。
例えば「/」にアクセスしたらトップページを表示し、「/hello」にアクセスしたら挨拶メッセージを返す、というように、URLと処理を結びつけるのがルーティングの仕事です。Laravelでは、この設定をroutesフォルダ内のweb.phpというファイルに記述します。
ルートを追加することで、どのURLで何を表示するかを自由にコントロールでき、アプリの動作が明確になります。とても基礎的な部分ですが、ここを理解するだけで「Laravelってこう動いているんだ!」と一気にわかりやすくなるでしょう。
// ルーティングのイメージ例
Route::get('/', function () {
return 'ここがトップページです!';
});
Route::get('/hello', function () {
return 'こんにちは!Laravelへようこそ';
});
このように、ルーティングはLaravelの動作を決める最初のステップです。URLと処理の紐づけが理解できると、Webアプリの仕組みがぐっと身近に感じられるようになります。
2. web.phpの場所と役割
web.phpは、Laravelで「ブラウザからのアクセスに対応する処理」をまとめて書くための、とても大切なファイルです。ここにルート(道順)を書いていくことで、「このURLにアクセスされたらこの動きをする」というルールをLaravelに教えてあげます。
ファイルの場所はプロジェクト内の次のパスです。
hello-laravel/routes/web.php
実際に開いてみると、最初はほとんど何も書かれていませんが、ここに自分でルートを追加していくことで、アプリが少しずつ動き始めます。言わば、Webアプリの入り口を作る場所だと思うとイメージしやすいでしょう。
例えば、次のように書けば簡単なメッセージを表示するルートが作れます。
// web.php の簡単なルート例
Route::get('/sample', function () {
return 'これはサンプルページです';
});
このようにweb.phpは、ブラウザで何を表示するかを決める“案内板”のような役割を持っています。Laravelを使う上で必ず触れるファイルなので、まずは場所と役割をしっかり押さえておくと理解が一気に進みます。
3. 基本のルートの書き方
それでは、実際にweb.phpに最初のルートを書いてみましょう。ここでは、トップページにアクセスされたときに、シンプルな文字を表示する基本のルーティングを作ってみます。
use Illuminate\Support\Facades\Route;
Route::get('/', function () {
return 'トップページです';
});
このコードは、/(トップページのURL)にアクセスされたときに、「トップページです」という文字を表示する、いちばん基本的なルート定義です。
1行目のuse Illuminate\Support\Facades\Route;は、「これからRouteという仕組みを使いますよ」とLaravelに伝えるためのおまじないのようなものです。毎回意識して覚える必要はありませんが、ルーティングを書くときには基本的に最初に書かれていると思っておけば大丈夫です。
次のRoute::get('/', function () { ... });が、実際のルート定義です。
Route::get()… ブラウザからの「ページを表示して」というGETリクエストに反応するための書き方です。'/'… どのURLに反応するかを指定しています。ここではトップページを意味します。function () { return 'トップページです'; }… アクセスされたときに実行する処理で、ここでは単純な文字列を返しています。
最初は難しく見えるかもしれませんが、「このURLに来たら、この処理をする」という対応関係を1行ずつ書いていくイメージです。まずはこのシンプルなサンプルを動かしてみて、「URLにアクセスしたらメッセージが返ってくる」という感覚をつかむところから始めてみましょう。
4. 新しいURLへのルートを追加する
次は、トップページ以外のURLにも自分で好きなページを用意してみましょう。例えば、/helloというURLにアクセスしたときに「Hello Laravel」と表示したい場合は、web.phpに次のようなルートを追加します。
Route::get('/hello', function () {
return 'Hello Laravel';
});
このコードは、「/helloというURLにアクセスされたら、この中の処理を実行してください」という意味になります。先ほどの/のルートと同じように、Route::get()でURLと処理をセットで登録しているイメージです。
'/hello'… どのパスにアクセスされたときに反応するかを表します。function () { return 'Hello Laravel'; }… 実際に行う処理で、ここではシンプルな文字列をそのまま画面に返しています。
つまり、「/hello に来たら『Hello Laravel』とあいさつするページ」を一行で用意しているイメージです。トップページのルートと並べて書いておけば、/と/helloの2つのURLがどちらも使えるようになります。
Route::get('/', function () {
return 'トップページです';
});
Route::get('/hello', function () {
return 'Hello Laravel';
});
このように、ルートは1つのファイルの中にいくつも追加できます。URLごとにRoute::get()を書き足していくことで、「このURLではこのメッセージ」「別のURLでは別のページ」というように、Laravelアプリのページを少しずつ増やしていくことができます。
5. 実際にブラウザで確認してみよう
Laravel開発サーバーが起動している状態で、ブラウザに以下のURLを入力してアクセスしてみてください:
http://127.0.0.1:8000/→ 「トップページです」が表示されるhttp://127.0.0.1:8000/hello→ 「Hello Laravel」が表示される
Hello Laravel
6. よくある間違いと注意点
ルート定義でよくあるミスとしては、次のようなものがあります:
- セミコロン(;)のつけ忘れ → PHPでは命令の終わりに
;が必要です - URLの綴り間違い →
/helloではなく/heloと書いてしまうなど - サーバーを再起動していない → Laravelでは基本的にリアルタイムで反映されますが、たまに再起動が必要になることもあります
7. コメントでルートに説明をつけよう
複数のルートがあると、何のために書いたか分かりづらくなることがあります。そんなときは、コメントをつけておくと便利です。
// トップページのルート
Route::get('/', function () {
return 'トップページです';
});
// Helloページのルート
Route::get('/hello', function () {
return 'Hello Laravel';
});
コメントは、//で始めるとその行が説明文になります。プログラムの実行には影響しません。
8. Route::post()との違いは?
Route::get()の他にも、Route::post()という書き方があります。
これは、フォーム送信などでデータを送るときに使うルートの書き方です。まだ詳しくは学んでいませんが、GETとPOSTの違いがあることを覚えておくと、今後の理解がスムーズになります。
まとめ
Laravelでルーティングを設定する作業は、初心者にとって最初の大きな学習ポイントになりますが、実際にはとても整理された仕組みで構成されていて、基本の考え方を丁寧に押さえることで自然と理解が深まっていきます。特に、web.phpというファイルにすべてのルートを記述するという明確なルールがあることで、どこを編集すればよいか迷わずに作業を進められます。はじめてLaravelに触れるときは、URLと処理の結びつきが分かりづらく感じることもありますが、URLごとにRoute::get()を追加するだけで動作を確認できるため、ページの仕組みを視覚的に把握しながら操作できる点がとても魅力的です。実際にブラウザで表示しながら学ぶことで、ルート設定の理解は一気に深まりますし、短いコードでも大きな動きを作り出せる感覚が得られます。 ルーティングを丁寧に使い分けることで、ページ遷移の構造が明確になり、URLの扱い方や意味付けも自然と身につきます。たとえばトップページを示す「/」はWebアプリの入口として非常に重要であり、ここに何を表示するかでサイト全体の印象が大きく変わります。また、/hello のように新しいURLを追加して表示内容を変えることで、Webページがどのように成り立っているかが具体的に理解できます。Laravelのルーティングは直感的に使えるため、慣れてくるとより複雑な構成にも挑戦しやすくなり、条件分岐やパラメータ付きルートなどの応用にも自然につながっていきます。 さらに、初心者がよくつまずくポイントとして、セミコロンの付け忘れやURLの綴り間違いがあります。特に小さなスペルミスが原因で画面が表示されないことはよくあるため、丁寧に確認する習慣を身につけることが大切です。コードにはコメントをつけることで、あとから見返したときにも理解しやすくなり、複数のルートが増えてきたときにも迷わず編集できるようになります。 ルーティングの基礎を押さえたら、GETとPOSTの違いを意識しながらページを組み立てることも重要です。GETはページの表示に使い、POSTはデータの送信に使われるという基本的な役割の違いがあります。この仕組みを早い段階で理解しておくと、後々フォーム処理やデータベース連携を学ぶときに大きな助けになります。Laravelのルーティングはシンプルでありながら、使いこなすことでWebアプリ全体の流れをしっかりとコントロールできる力が身につくため、初心者にとって非常に価値のある学習領域といえます。 最後に、基本ルートをまとめたサンプルコードを紹介しておきます。これはLaravelで最初に触れるルーティングの典型的な構成であり、ここを理解しておくことで他のページも同じ考え方で増やしていけます。
サンプルプログラム:基本のルーティング構成
use Illuminate\Support\Facades\Route;
// トップページのルート
Route::get('/', function () {
return 'トップページです';
});
// Helloページのルート
Route::get('/hello', function () {
return 'Hello Laravel';
});
// POST送信の例
Route::post('/send', function () {
return 'データを受け取りました';
});
このように、LaravelではURLと処理内容をコードで明確に対応づけることができ、web.phpを中心にページ構造を整理しながらアプリを作成できます。ルートを一つずつ追加するたびに、自分のアプリが少しずつ形になっていく感覚を得られるため、学習を進めるほど理解が深まり、自然と応用力も高まっていきます。実際にブラウザで動作を確認しながら学べるのはとてもわかりやすく、自分でURLを増やしていくことでLaravelの楽しさも大きく実感できます。
生徒
「ルーティングって難しいものだと思っていましたが、web.phpに書くだけでページが表示されるのってすごく便利ですね。」
先生
「そうなんです。Laravelのルーティングはとても直感的なので、基本を押さえればどんどんページを増やせますよ。」
生徒
「Route::get() の仕組みも理解できました!URLと処理がしっかり結びつくんですね。」
先生
「その通りです。GETとPOSTの違いも覚えておくと、フォームやデータ送信にもスムーズに進めますよ。」
生徒
「ありがとうございます!これなら自分でも新しいページを作れそうです!」