回答編集履歴
7
修正
answer
CHANGED
@@ -8,6 +8,8 @@
|
|
8
8
|
C:/Homestead/Laravel5.1/Homestead→C:/Homestead/Laravel5.1
|
9
9
|
で問題ないです
|
10
10
|
|
11
|
+
# もっと詳しく
|
12
|
+
|
11
13
|
C:/Homestead/Laravel5.1の中身はこうなっていると思います。
|
12
14
|
```
|
13
15
|
app/
|
6
修正
answer
CHANGED
@@ -27,6 +27,7 @@
|
|
27
27
|
```
|
28
28
|
|
29
29
|
間違えてこのディレクトリ内で`git clone https://github.com/laravel/homestead.git Homestead`していたら削除してください。
|
30
|
+
もしもHomestead.yamlやVagrantfileが存在しない場合は`composer require laravel/homestead --dev`と`vendor\\bin\\homestead make`を実行してください。
|
30
31
|
|
31
32
|
Homestead.yamlは以下のようにしていれば問題ないでしょう。
|
32
33
|
|
@@ -57,9 +58,10 @@
|
|
57
58
|
- map: 'C:/Homestead/laravel5.1'
|
58
59
|
to: /home/vagrant/Code
|
59
60
|
```
|
60
|
-
のmapは自分の方のディレクトリを指定します。これはプロジェクトディレクトリを指定するのが普通です。
|
61
|
+
の**mapは自分の方のディレクトリパス**を指定します。これはプロジェクトディレクトリを指定するのが普通です。
|
61
|
-
そしてtoは仮想環境のサーバーのパスです。
|
62
|
+
そして**toは仮想環境のサーバーのパス**です。
|
62
|
-
つまりこれはC:/Homestead/laravel5.1が仮想環境の/home/vagrant/Codeと共有状態になります。
|
63
|
+
つまりこれは**C:/Homestead/laravel5.1が仮想環境の/home/vagrant/Codeと共有状態**になります。
|
64
|
+
(なので、先程のC:/Homestead/laravel5.1/Homesteadという指定はプロジェクトのディレクトリの奥のディレクトリと共有することになります。仮想環境からはこうなってるとプロジェクトのディレクトリが確認できないのでマウントできたとしてもファイルが存在しないなどのエラーが起こります。)
|
63
65
|
|
64
66
|
`vagrant up`をした時に以下のような文が最後の方に出てきますが、その部分をみることで共有されたかどうかが分かります。
|
65
67
|
|
@@ -78,7 +80,7 @@
|
|
78
80
|
```
|
79
81
|
これはサイトのドキュメントルートとhost名を指定することで外からhost名でアクセス出来るようにできます。
|
80
82
|
toは仮想環境のドキュメントルートを指定します。foldersの設定で/home/vagrant/CodeがC:/Homestead/laravel5.1と共有状態になっているので、C:/Homestead/laravel5.1/publicがドキュメントルートになります。
|
81
|
-
ドキュメントルートはこのhomestead.appというホストにアクセスした時にサーバーがファイルを確認しにいくフォルダのパスのことです。
|
83
|
+
> ドキュメントルートはこのhomestead.appというホストにアクセスした時にサーバーがファイルを確認しにいくフォルダのパスのことです。
|
82
84
|
|
83
85
|
laravelのドキュメントルートはプロジェクトのディレクトリの中にあるpublicディレクトリなので、このような指定になります。(実際に最初にアクセスしにいくファイルはpublic/index.phpです。)
|
84
86
|
|
5
追記しました。
answer
CHANGED
@@ -61,6 +61,14 @@
|
|
61
61
|
そしてtoは仮想環境のサーバーのパスです。
|
62
62
|
つまりこれはC:/Homestead/laravel5.1が仮想環境の/home/vagrant/Codeと共有状態になります。
|
63
63
|
|
64
|
+
`vagrant up`をした時に以下のような文が最後の方に出てきますが、その部分をみることで共有されたかどうかが分かります。
|
65
|
+
|
66
|
+
```
|
67
|
+
==> laravel5.1: Mounting shared folders...
|
68
|
+
laravel5.1: /vagrant => C:/Homestead/laravel5.1
|
69
|
+
laravel5.1: /home/vagrant/Code/Laravel => C:/Homestead/laravel5.1
|
70
|
+
```
|
71
|
+
|
64
72
|
## sites
|
65
73
|
|
66
74
|
```
|
@@ -72,4 +80,7 @@
|
|
72
80
|
toは仮想環境のドキュメントルートを指定します。foldersの設定で/home/vagrant/CodeがC:/Homestead/laravel5.1と共有状態になっているので、C:/Homestead/laravel5.1/publicがドキュメントルートになります。
|
73
81
|
ドキュメントルートはこのhomestead.appというホストにアクセスした時にサーバーがファイルを確認しにいくフォルダのパスのことです。
|
74
82
|
|
75
|
-
laravelのドキュメントルートはプロジェクトのディレクトリの中にあるpublicディレクトリなので、このような指定になります。(実際に最初にアクセスしにいくファイルはpublic/index.phpです。)
|
83
|
+
laravelのドキュメントルートはプロジェクトのディレクトリの中にあるpublicディレクトリなので、このような指定になります。(実際に最初にアクセスしにいくファイルはpublic/index.phpです。)
|
84
|
+
|
85
|
+
ちなみに、このsitesの設定を変更した場合は再度プロビジョニングが必要です。(`vagrant provision`コマンド)
|
86
|
+
|
4
色々書きました
answer
CHANGED
@@ -27,3 +27,49 @@
|
|
27
27
|
```
|
28
28
|
|
29
29
|
間違えてこのディレクトリ内で`git clone https://github.com/laravel/homestead.git Homestead`していたら削除してください。
|
30
|
+
|
31
|
+
Homestead.yamlは以下のようにしていれば問題ないでしょう。
|
32
|
+
|
33
|
+
```
|
34
|
+
ip: 192.168.10.10 ←ここは複数立てるときは別のipへ変更してください
|
35
|
+
memory: 2048
|
36
|
+
cpus: 1
|
37
|
+
provider: virtualbox
|
38
|
+
authorize: ~/.ssh/id_rsa.pub
|
39
|
+
keys:
|
40
|
+
- ~/.ssh/id_rsa
|
41
|
+
folders:
|
42
|
+
- map: 'C:/Homestead/laravel5.1'
|
43
|
+
to: /home/vagrant/Code
|
44
|
+
sites:
|
45
|
+
- map: homestead.app
|
46
|
+
to: /home/vagrant/Code/public
|
47
|
+
databases:
|
48
|
+
- homestead
|
49
|
+
name: laravel5.1
|
50
|
+
hostname: laravel5.1
|
51
|
+
```
|
52
|
+
|
53
|
+
## folders
|
54
|
+
|
55
|
+
```
|
56
|
+
folders:
|
57
|
+
- map: 'C:/Homestead/laravel5.1'
|
58
|
+
to: /home/vagrant/Code
|
59
|
+
```
|
60
|
+
のmapは自分の方のディレクトリを指定します。これはプロジェクトディレクトリを指定するのが普通です。
|
61
|
+
そしてtoは仮想環境のサーバーのパスです。
|
62
|
+
つまりこれはC:/Homestead/laravel5.1が仮想環境の/home/vagrant/Codeと共有状態になります。
|
63
|
+
|
64
|
+
## sites
|
65
|
+
|
66
|
+
```
|
67
|
+
sites:
|
68
|
+
- map: homestead.app
|
69
|
+
to: /home/vagrant/Code/public
|
70
|
+
```
|
71
|
+
これはサイトのドキュメントルートとhost名を指定することで外からhost名でアクセス出来るようにできます。
|
72
|
+
toは仮想環境のドキュメントルートを指定します。foldersの設定で/home/vagrant/CodeがC:/Homestead/laravel5.1と共有状態になっているので、C:/Homestead/laravel5.1/publicがドキュメントルートになります。
|
73
|
+
ドキュメントルートはこのhomestead.appというホストにアクセスした時にサーバーがファイルを確認しにいくフォルダのパスのことです。
|
74
|
+
|
75
|
+
laravelのドキュメントルートはプロジェクトのディレクトリの中にあるpublicディレクトリなので、このような指定になります。(実際に最初にアクセスしにいくファイルはpublic/index.phpです。)
|
3
修正
answer
CHANGED
@@ -6,4 +6,24 @@
|
|
6
6
|
そして回答ですがmapするのはプロジェクトルートになるのでHomesteadディレクトリがあったとしても、そこまで指定する必要はありません。
|
7
7
|
|
8
8
|
C:/Homestead/Laravel5.1/Homestead→C:/Homestead/Laravel5.1
|
9
|
-
で問題ないです
|
9
|
+
で問題ないです
|
10
|
+
|
11
|
+
C:/Homestead/Laravel5.1の中身はこうなっていると思います。
|
12
|
+
```
|
13
|
+
app/
|
14
|
+
bootstrap/
|
15
|
+
config/
|
16
|
+
database/
|
17
|
+
public/
|
18
|
+
resources/
|
19
|
+
storage/
|
20
|
+
tests/
|
21
|
+
vendor/
|
22
|
+
.vagrant/ ←このディレクトリが存在することを確認してください
|
23
|
+
.env
|
24
|
+
Homestead.yaml ←このファイルが存在することを確認してください
|
25
|
+
Vagrantfile ←このファイルが存在することを確認してください
|
26
|
+
他ファイル幾つか
|
27
|
+
```
|
28
|
+
|
29
|
+
間違えてこのディレクトリ内で`git clone https://github.com/laravel/homestead.git Homestead`していたら削除してください。
|
2
修正
answer
CHANGED
@@ -3,3 +3,7 @@
|
|
3
3
|
なので、プロジェクトの下に.homesteadディレクトリがない場合はプロジェクトのルートディレクトリにHomestead.yamlが存在します。
|
4
4
|
|
5
5
|
前回は実際に検証して答えたわけではなかったので、仕様が変更されていることを認知できていませんでした。
|
6
|
+
そして回答ですがmapするのはプロジェクトルートになるのでHomesteadディレクトリがあったとしても、そこまで指定する必要はありません。
|
7
|
+
|
8
|
+
C:/Homestead/Laravel5.1/Homestead→C:/Homestead/Laravel5.1
|
9
|
+
で問題ないです
|
1
修正
answer
CHANGED
@@ -1,3 +1,5 @@
|
|
1
1
|
どうやら、途中からHomesteadの仕様も変わったようで、プロジェクトのディレクトリ以下にHomestead.yamlが作られるように変更されているようです。
|
2
2
|
|
3
|
-
なので、プロジェクトの下に.homesteadディレクトリがない場合はプロジェクトのルートディレクトリにHomestead.yamlが存在します。
|
3
|
+
なので、プロジェクトの下に.homesteadディレクトリがない場合はプロジェクトのルートディレクトリにHomestead.yamlが存在します。
|
4
|
+
|
5
|
+
前回は実際に検証して答えたわけではなかったので、仕様が変更されていることを認知できていませんでした。
|