質問: xserverにlaravelを設置し、サイトは表示されています。 現在、画像を投稿して、表示させようとしても表示がされません。 xserverではドメイン/laravel一式/として、publicの中身を xserverのドキュメントルートpublic_html以下に置いています。 画像はドメイン/laravel一式/storage/app/publicに置かれるように設定しており、 public_html/storage/imgに手動で、画像をアップロードしてあげると画像が表示されることから、 /laravel一式/storage/app/publicとpublic_html/storage/imgをシンボリックリンクで つなげばいいのか、考えていました。 ただ、下記のシンボリックリンクのコマンドを、 SSHで接続した状態で実行しても、 特に何も起きません。 ``` ln -s /home/サーバーID/ドメイン/laravel/storage/app/public/img/ /home/サーバーID/ドメイン/public_html/storage/img/ ``` 下記のように表示されるだけです。 ``` /home/サーバーID/ドメイン/laravel/storage/app/public/img/: 合計 820 184 0e148d1b5e6bac61ee8d855f6867d734_s.jpg 152 AOitAMDCzjOO6N9X6RYXHv1LJsa033pEBZ7tSWZh.jpeg 184 ZR0AfUeX8Ok9wmjgwqjHsLfTxZ9Ay1OKl1VLq9Hc.jpeg 116 gQV7NfQUuPqE0mseJpeoSuDI79HIJ6BfUGthIDCM.jpeg 184 vrVW261sO7Bh0GATSXNa2yMdGnii4yFwMqSoMK0M.jpeg /home/サーバーID/ドメイン/public_html/storage/img/: 合計 1336 348 MtuEitK78MRU5xBFMFy5b1QN7fPC8CvAClOEbSGy.jpeg 204 NEmQifaetMKaxa3LfDPuU0N1leE6g4i487IczNy9.jpeg 88 bHrhXh6bhAjUWt9V7OecO7LKOG7hXSXb59IxN19k.jpeg 164 g2HwwzdaG2B8sc89V2RiVObOkmGlfEayspZNORZQ.jpeg 348 ljmy30Ey1Gx32o3VMfxRgOZO7N3VVMf057Yi9kAA.jpeg 184 vrVW261sO7Bh0GATSXNa2yMdGnii4yFwMqSoMK0M.jpeg ``` ln -l のコマンドを打っても、 シンボリックリンクができている様子はありません。 1 画像を表示させる手段として、シンボリックリンクという考え方が正解なのか 2 その場合、なぜ、シンボリックリンクがうまくできないのか こちらをお教えいただけると幸いです。
回答: ln -s で繋ぐのは `laravel/storage/app/public` と `public_html/storage` です。 imgについては上のディレクトリがシンボリックリンクなので自動的に使えるようになります。 シンボリックリンクができているかを確認するには cd public_htmlしてから ls -al で確認してください。 また、 `artisan storage:link` でもシンボリックリンクを作成することができます