LoginSignup
0
0

More than 3 years have passed since last update.

【Windows10版】Virtualbox × Vagrant LaravelとHomesteadで仮想環境を作ってみた。

Last updated at Posted at 2020-07-29

【開発環境】

Windows 10 HOME
VirtualBox 6.0
Vagrant 2.2.9

【仮想環境側】
laravel (v6.0.2)
homestead version ^11.0
ubuntu-20.04-amd64-disk001

【目次】

  項目     
- はじめに
- やってみた

はじめに

ローカルで仮想環境を作ってみようと調べていたら
HomesteadとLaravelを簡単にインストールできる
PHPファイルで作成した人がいたのでそれを使ってみた。

【Laravel】ワンアクションでプロジェクト毎にLaravelとHomesteadをインストールしてくれる「Larastar」

やってみた

Larastar-masterをDLして解凍後、
Laravelのプロジェクトを作るフォルダに設置。

Larastar-master/larastar.php
<?php
//----------- config -------------

const VERSION = "6.0.*";
const DIRECTORY_NAME = "";

インストールしたいLaravelのバージョンを記載。

powershell
PS C:\Larastar-master> php larastar.php

powershellにて
larastar.php があるフォルダに移動してphpを実行します。

powershell
NoticeConfirm 'to' of 'folders' in 'Homestead.yaml'. And 'vagrant reload' please.

--------- Laravel & laravel homestead installed! -------------

--------- Laravel & laravel homestead セットアップバッチ「ララスター☆彡」 終了 -------------

暫くするとインストールが完了します。
下記のURLにアクセスすると

No input file specified

No input file specified.

訳すと
「指定されたファイルがありません。」

nginxのエラーログを見てみると、

/var/log/nginx/homestead.test-error.log
Unable to open primary script: /home/vagrant/code/public/index.php

ここにファイルが無いよ と出ています。

じゃあここにファイルを作ればエラーは解消できるのか検証してみます。

powershell
vagrant@larastar-master:~$ cd /home/vagrant/code/
vagrant@larastar-master:~/code$
vagrant@larastar-master:~/code$ mkdir public
vagrant@larastar-master:~/code$ cd public
vagrant@larastar-master:~/code/public$ vi index.php

code/public/ にindex.phpファイルを作成します。

powershell
<?php
echo "hello world";

hello world と記載。
ブラウザを再度見ると、

hello world

表示されました。
これでディレクトリのズレを解消できれば
Laravelのプロジェクトを表示出来そうです。

index.php
<?php
var_export($_SERVER);

先ほど作成した「index.php」に
$_SERVERというグローバル変数を記載すればサーバー側の情報を
どこからでも呼ぶことが出来ます。

3.png

'DOCUMENT_ROOT' => '/home/vagrant/code/public'

その中のドキュメントルートは上記になっています。

Larastar-master/Homestead.yaml

sites:
    (×)    to: /home/vagrant/code/public 
     ↓
    ()   to: /home/vagrant/code/laravel/public

Homestead.yamlファイルの「sites to」の部分を
$_SERVERで見たディレクトリでは無く、
laravelの表示したいプロジェクトのディレクトリに修正します。

powershell
vagrant provision

ファイル修正後に上記のコマンド実行。
詳しくはこちらをどうぞ。 Vagrant Provisionとは

4.png

でLaravelの画面が表示出来ました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0