Vagrantのパーミッション問題、Laravelでのエラー
MacのローカルでVagrantを使用して共有フォルダを使用していると、Laravelで500エラーが発生してviewが返ってこない現象に陥った。
VagrantにSSHで入ってパーミッションを変更してもうまくいかない。
原因としては、共有フォルダを使用すると、Mac側でパーミッションが書き換えられてしまうらしい? 対策としてはVagrantfileにパーミッションの設定をしてあげることで問題を解決した。
具体的な手順としては、Vagrantfileのconfig.vm.synced_folderの設定を下記の用に変更した。
config.vm.synced_folder "data", "/var/www/html/", :owner => 'apache', :group => 'apache', mount_options: ['dmode=777', 'fmode=755']
最初に共有するローカルのフォルダ、共有先のVagrant内でのフォルダを指定。
次にそのフォルダのパーミッショングループを指定。
Apacheのユーザーとグループに関してはhttpd.confを参照
User apache #Apacheのユーザー Group apache #Apacheのグループ
最後にパーミッション設定(ここらへんまた調べて追記します)。
これでviewが表示されました。めでたしめでたし