【Laravel】LaravelをMAMPで使う

対象 Laravel環境構築に苦戦している人

書いている人 プログラミング歴2年ほど

前提 composerが入っている MAMPが入っている ローカルにLaravelプロジェクトを用意できる

環境 PC:M1 mac Laravel: Version 9.0.1 MAMP Version 6.6

MAMPが気づいたらM1対応していた。
PHPを勉強している時によく、MAMPにお世話になった。
最近だと公式がお勧めしているdocker sailを使うのが一番早い思うが、sailコマンドを使うことで混乱してしまう人もいると思う。MAMPは特にプログラミング初めたての人にはとっつきやすいと思うので、環境を作る際に参考にして欲しい。

ここではMAMPの詳しい説明は省略するが、webサーバー、DB、PHPを用意してくれる優れものだ。Laravelには、ローカルサーバーをたてる機能が備わっているが、DBは自前で用意する必要がある。MAMPを使えば、全部MAMP任せにすることができる。

なお、ComposerとMAMPが入っていることが前提だ。用意していない人は用意しよう。以下に参考記事を貼っておく。

MAMPも公式から落としておこう。無料版で大丈夫だ。

MAMP公式(Mac)https://www.mamp.info/en/mac/

MAMP公式(Windows)https://www.mamp.info/en/windows/

目次

Laravelをローカルに作成する

まずは、ローカルにLaravelを用意する。作成方法は以下を参考にして欲しい。

今回は以下のLaravelプロジェクトを作成した。

Laravelプロジェクトをローカルに作成

MAMPのルートフォルダにLaravelを移動する

Laravelプロジェクトを作成したら、MAMPのhtdocsフォルダに上で作成したLaravelプロジェクトを移動させよう。

MAMPフォルダはMacだとApplicationフォルダにあるはずだ。

MAMPで扱うプロジェクトは全てhtdocsフォルダ以下に入れる必要がある。ここがMAMPのドキュメントルートになる。とりあえず、MAMPを使う場合はこのフォルダに突っ込んでおけばいけるはずだ。

MAMPのポップアップからDocument rootを確認できる。

MAMPを立ち上げる

MAMPを立ち上げて、Laravelプロジェクトを開いてみよう。

MAMPを立ち上げたらこのようなPOPが表示されるはず、下にあるのはMAMP PRO(有料)へのバナー広告だ。

設定によって変わってくると思うが、右上のアイコンが緑色になっていない場合はwebサーバーが立ち上がっていないので、右上のstartをクリックしよう。

右上のstartをクリックして、緑色にしよう。

サーバーが立ち上がったらWebページが開くと思う。

Webページはこんなやつ。最新だとバージョン6.6かな

開かない場合は、ポップアップのWebStartボタンを押そう。

WebStartページをクリックすれば、Webページが開くはずだ。

Laravelプロジェクトを開く

MAMPのサーバーを立ち上げたら、Laravelプロジェクトを開こう。

Webページの右上、MyWebsiteボタンを押す。

MAMPを立ち上げて、MyWebsiteボタンを押そう。

ボタンを押すと以下のようなページになるはずだ。ここが、htdocsフォルダの中身だ。htdocsにLaravelプロジェクトを入れていれば以下のようにフォルダが表示されるはずだ。

ここにhtdocsフォルダにいれたファイルが表示される

ちなみにここへは、http://localhost:8888をURL欄に直接記入することでもアクセスできる。

MAMPのデフォルトの初期サーバーはApacheかつPort番号は8888が指定されている。設定からNginxにサーバーを変更したりポート番号も変更できるので好みで。

Web serverはApacheが指定されている
ポート番号は8888
localhost:8888でもアクセスできる

Laravelプロジェクトフォルダを開いたら、Laravelの中身が展開される。Laravelのルートはpublicなので、publicをクリックすると、いつものLaravelの画面が表示されるはずだ。

Laravelのフォルダの中身が展開される。publicフォルダをクリックしよう。
Laravelのいつもの画面が表示される

また、http://localhost:8888/laravel_mamp_test/public/でも表示されるぞ。

右下のLaravel v9.0.1の隣、PHPバージョンについて注目して欲しい。ここのPHP v8.0.8はMAMPのPHPバージョンのことだ。MAMPのPはPHPのP、PHPもMAMPが用意してくれている。

MAMPのPHP versionが反映されている。

試しにここのversionを変更してみよう。

PHP versionを7.4.21に変更する。

この状態のまま、Laravelのルートを開くと以下のエラーが表示されるはずだ。なぜなら、Laravel9はPHP versionが8.0以上じゃないと動かないからだ。

PHP versionが低いからLaravelを開くことができない。

もちろん、自分のMacに入っているPHP versionが反映されているわけでもない。

もちろん自分のMacに入っているPHP verでもない。

このようにMAMPのPHP versionが反映されていることも注意しておこう。

phpMyAdminにログインしてDBを作成する

ここまでは、わざわざMAMPを使わずともLaravelだけでできるが、ここからMAMPを使う便利さが発揮される。

MAMPにはMySQLを便利に使えるGUIであるphpMyAdminが使える。まずは、phpMyAdminにログインして、その中でDBを作成しよう。

MAMPで立ち上げたWebページのToolsタブから、phpMyAdminをクリックすると、phpMyAdminのページを飛んでいける。

ToolsからphpMyAdminへ飛ぶ
phpMyAdminへ入れた。

phpMyAdminへ入れたら、DBを作成していく。最初にある、4つのDBは元から入っているDBなので誤って削除しないように気をつけよう。

新規作成ボタンを押して自分の好きな名前のDBを作成しよう。今回はプロジェクトと一緒の名前のDB名にした。

新規作成ボタンをクリック
DB名を好きに名付ける。

DBが作成できたら、一覧のところに追加されるはずだ。もちろん、テーブルはまだ作成していないので空のままだと思う。

新しくDBが作成された。
もちろんテーブルはまだない。

Laravelの.envファイルを修正する

DBが作成できたら、今度はLaravelの.envファイルを修正していく。このenvファイルはLaravelの設定ファイルとでも言えばいいのか、ここのDBの項目を変更して上で作成したDBにアクセスできるようにする。

.envファイルのDB_CONNECTIONの欄を見つけたら、PORT番号やDATABASE名を変更しよう。

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=

変更前

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=8889
DB_DATABASE=laravel_mamp_test
DB_USERNAME=root
DB_PASSWORD=root

変更後

変更箇所は4つ。ポート番号DATABASE名USERNAMEPASSWORDだ。

何に変更するかはMAMPのwebページ、MySQL欄に記載されている。

MySQLのタブを開いてPort番号やUsername、Passwordを確認しよう。

これで準備は完了だ。

migrateコマンドを入力する

.envファイルが修正できたら、後はmigrateコマンドを走らせて実際にDBにテーブルが作成されるか確認しよう。

migrateコマンドを実行すると、Laravelプロジェクトのdatabaseフォルダの中のmigrationsフォルダの中に元から入っているテーブルがDBに生成されるはずだ。

Laravelプロジェクトを作成したら、元からmigrationsフォルダには4つのファイルが生成されている

php artisan migrateコマンドをLaravelプロジェクトのルートで叩いて以下のようになれば成功だ。実際にDBの中身を確かめてみよう。

4つのtableの作成に成功した。

phpMyAdminにアクセスしてDBを見てみるとテーブルが作成されたのがわかると思う。

テーブルが作成された。
migrationsというテーブルはなんだか勝手に生成されるっぽいので5つのテーブルが作成された。

これでDBの用意も完了だ。

まとめ

  • Laravelプロジェクトをローカルに作成し、MAMPのhtdocs以下にプロジェクトを移動する
  • DBを、phpMyAdminから作成する
  • .envファイルを修正し、php artisan migrateコマンドを入力してテーブルを作成する

MAMPを使えば簡単にLaravelの環境を整えることができた。簡単にできる方法なので、Laravelの勉強をしたい人は参考にしてもらえれば幸いです。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次