Enable apache writable files with Vagrant
Enable Apache writable files.
Depending on the web application apache might need to be able to create new files or directories, this is very much the case when using frameworks like Laravel, Yii or Symphony…
All you need to do is assign the www-data
user as the file and group owner, for the directory where your apapche web root is located, usally this is /var/www
Make sure the vagrant is not running: vagrant halt
Open your Vagrantfile in an editor.
Now add :owner => "www-data", :group => "www-data"
to config.vm.synced_folder
If you are still using v1 config files, add it to config.vm.share_folder
The complete command should look simular to the code below, make sure to update the path /location/to/locahost/sites
Vagrant.configure("2") do |config|
#...
config.vm.synced_folder "/location/to/locahost/sites", "/var/www", id: "vagrant-root", :owner => "www-data", :group => "www-data"
#...
end
Save the file.
run vagrant up
Now if you use vagrant ssh
and look at /var/www
the owner and group should be www-data
and apache will be able to create new files and directories.
Written by Stephan Steynfaardt
Related protips
3 Responses
Thanks a lot!!! Very helpfully!!
thanks! it worked really well!
4 years later, you saved my butt. thank you!