Home Blog CV Projects Patterns Notes Book Colophon Search

Apache Permissions

1 Jun, 2009

When setting up virtual hosts on Apache it is a very good idea to create a different user for each virtual host.

You can add a new user like this:

$ sudo adduser packyears

If you already have files the new user should own you can change their ownership like this:

$ sudo chown -R packyears /var/www/vhost/packyears/

The easiest way of setting up the appropriate permissions is to add the Apache user to the packyears group and then grant group read permission to everything Apache needs to read and group write permission to everything it needs to write to (if any).

$ sudo usermod -a -G packyears www-data
$ chmod -R g+r /var/www/vhosts/packyears/htdocs
$ chmod -R g+w /var/www/vhosts/packyears/data

As it happens, I prefer having files in /home/packyears to /var/www/vhosts/packyears so that all the user's files are in one place and so that I'm already in the right directory when I log in via SSH. You can set it up the virtual hosts however you like though.

Copyright James Gardner 1996-2020 All Rights Reserved. Admin.