【Homestead】Laravelの開発環境作成とPHPのバージョンを変更する方法

GAEのスタンダード環境にLaravelをデプロイしようと思いプロジェクトを作成しましたが、調べてみるとPHP7.2で作成する必要がありました。

cloud.google.com

Laravelの開発環境はHomesteadを使用しており、現時点(2019/03/29)で最新バージョンを使用するとPHP7.3がデフォルトになります。HomesteadではPHPのバージョンを指定することができますので、今回はLaravelの開発環境であるHomesteadのインストール方法とHomesteadでPHPのバージョンを変更する方法を記載します。

なお、作業環境は windows 10 です。

Laravelの開発環境(Homestead)を作成

Homesteadを使うには、Git、VirtualBoxVagrantが必要になります。使い方はネットで検索すると多数出てきますので割愛しますが、参考までに私はこの記事を参考にしてインストールしました。Laravelのチュートリアルもあります!

www.hypertextcandy.com

Homesteadのbox追加

vagrant box add laravel/homestead

※ネットワークの環境にもよりますが時間がかかります。

途中、どの仮想環境を使用するか聞いてきます。私は'3'のvirtualboxを指定しました。

1) hyperv
2) parallels
3) virtualbox
4) vmware_desktop

Homesteadのインストール

git clone https://github.com/laravel/homestead.git Homestead
cd Homestead
git checkout v8.2.0
./init.bat

PHP7.2を使用する設定

インストールしたHomesteadの最新バージョンではPHPのデフォルトが7.3になりますが、ymlの設定でPHPのバージョンを変更することができます。(7.1、7.2、7.3の何れか)

今回は7.2に変更してみます。

Homestead.yml の設定変更

Homesteadフォルダ内にある「Homestead.yml」の sites: に php: "7.2" を追記します。
ついでに to: の設定もこの次に行うlaravelプロジェクトの作成に合わせて、下記のように変更しておきます。

sites:
    - map: homestead.test
      to: /home/vagrant/code/sample/public
      php: "7.2"

仮想環境を起動する

vagrant up

仮想環境に接続する

vagrant ssh

laravelのプロジェクト作成

codeフォルダを作成し、その配下にlaravelプロジェクト(sample)を作成します。

mkdir code
cd code/
composer create-project laravel/laravel sample

index.php ファイルを作成

PHPのバージョンはphpinfoを表示して確認します。phpinfoを表示する index.php を作成し、以下に格納します。

/home/vagrant/code/sample/public

index.php の内容は以下の通りです。

<?php
echo phpinfo();
?>

Hostsファイルの設定

Hostsファイル(C:\Windows\System32\drivers\etc\hosts)に以下の内容を追加します。

192.168.10.10  homestead.test

PHPのバージョン確認

chromeで以下に接続し、PHPのバージョンが7.2になっていれば変更完了です。

http://homestead.test/

f:id:takuyafujita:20190329234006j:plain

まとめ

最初はコマンド(php -v)でバージョン確認をしており、何故か7.3としか表示されず悩んでいましたがphpinfoで確認したら正しく変更されていました!これも経験ですね。ちなみにsampleプロジェクトをGAEのスタンダード環境にデプロイしてみましたが、色々とエラーになりました。次はGAEでLaravelを動かすのが目標です。