回答編集履歴
8
mklink修正
test
CHANGED
@@ -32,7 +32,7 @@
|
|
32
32
|
|
33
33
|
# Windowsの場合
|
34
34
|
|
35
|
-
mklink /d public/storage storage/app/public
|
35
|
+
mklink /d "public/storage" "storage/app/public"
|
36
36
|
|
37
37
|
|
38
38
|
|
7
mklinkのオプションを修正
test
CHANGED
@@ -32,7 +32,7 @@
|
|
32
32
|
|
33
33
|
# Windowsの場合
|
34
34
|
|
35
|
-
mklink /
|
35
|
+
mklink /d public/storage storage/app/public
|
36
36
|
|
37
37
|
|
38
38
|
|
6
シンボリックリンクの記述修正
test
CHANGED
@@ -30,9 +30,19 @@
|
|
30
30
|
|
31
31
|
# storage/app/publicのシンボリックリンクをpublic内に作る
|
32
32
|
|
33
|
+
# Windowsの場合
|
34
|
+
|
35
|
+
mklink /D public/storage storage/app/public
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
# Linux系の場合
|
40
|
+
|
33
|
-
|
41
|
+
ln -s storage/app/public public/storage
|
34
42
|
|
35
43
|
```
|
44
|
+
|
45
|
+
|
36
46
|
|
37
47
|
```PHP
|
38
48
|
|
5
Laravel5.1対応
test
CHANGED
@@ -19,3 +19,23 @@
|
|
19
19
|
var imgUrl = '{!!Storage::url("cv/' + id + '/' + fileName + '/")!!}';
|
20
20
|
|
21
21
|
```
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
### 追記
|
26
|
+
|
27
|
+
Laravel5.1のころには`php artisan storage:link`も`Storage::url()`も存在しないようなので、以下の方法を試してみてください。(やったことないので動作は保証できません。要検証です)
|
28
|
+
|
29
|
+
```
|
30
|
+
|
31
|
+
# storage/app/publicのシンボリックリンクをpublic内に作る
|
32
|
+
|
33
|
+
mklink /D storage/app/public public/storage
|
34
|
+
|
35
|
+
```
|
36
|
+
|
37
|
+
```PHP
|
38
|
+
|
39
|
+
var imgUrl = '{!!url("storage/cv/' + id + '/' + fileName + '/")!!}';
|
40
|
+
|
41
|
+
```
|
4
修正
test
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
|
13
13
|
|
14
14
|
|
15
|
-
`
|
15
|
+
`storage/app/public`は`php artisan storage:link`を実行することで、`public/storage`としてシンボリックリンクが生成されます。その後は`Storage::url()`でURLが得られます。
|
16
16
|
|
17
17
|
```PHP
|
18
18
|
|
3
修正
test
CHANGED
@@ -9,3 +9,13 @@
|
|
9
9
|
|
10
10
|
|
11
11
|
なお、`storage_path`で得た文字列から`/`が消えていることについてですが、おそらく`storage_path`が返すパスの区切り文字が`/`ではなく`\`になっているからです。JavaScript上に`\`を書けば、それは**エスケープシーケンス**としてみなされ、特別な文字になります。引数部分の`/`が消えないのは`/`と明示的に書いているからです。
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
`app/storage/public`は`php artisan storage:link`を実行することで、`app/public/storage`としてシンボリックリンクが生成されます。その後は`Storage::url()`でURLが得られます。
|
16
|
+
|
17
|
+
```PHP
|
18
|
+
|
19
|
+
var imgUrl = '{!!Storage::url("cv/' + id + '/' + fileName + '/")!!}';
|
20
|
+
|
21
|
+
```
|
2
補足
test
CHANGED
@@ -5,3 +5,7 @@
|
|
5
5
|
var imgUrl = '{!!url("cv/' + id + '/' + fileName + '/")!!}';
|
6
6
|
|
7
7
|
```
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
なお、`storage_path`で得た文字列から`/`が消えていることについてですが、おそらく`storage_path`が返すパスの区切り文字が`/`ではなく`\`になっているからです。JavaScript上に`\`を書けば、それは**エスケープシーケンス**としてみなされ、特別な文字になります。引数部分の`/`が消えないのは`/`と明示的に書いているからです。
|
1
修正
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
`app/public/`以下の
|
1
|
+
`app/public/`以下の**リンクURL**を取得するには`url()`を使います。`storage_path()`で得られるのは、URLではなく**ファイルパス**です。
|
2
2
|
|
3
3
|
```JavaScript
|
4
4
|
|