I have a server that a few different coders will be using to work on various websites. Each coder will need to have access to each website.
There's two 'clean' methods I've come up with to do this but I'd rather avoid them...
Each website is given it's own user/group to be owned by. The website would be stored in /home/username/www/ and I'll use Apache's suEXEC to switch between users/virtual hosts.
I create one user/group on the system which each coder uses to login as. Websites can then be stored in /var/www/website.com/ and Apache will run as that user to have read/write access to the files
The obvious security benefits to point 1 is that each website is sandboxes. If one site is compromised, the other sites should be safe. The downside to this method is having multiple usernames/passwords for each coder to remember.
Point 2 means each coder has one login (the same login...) and there's less clutter (50 websites on the host means 50 new users/groups)
My ideal setup was to give each coder their own user/group. This would give them their own ~ folder for storing their stuff and, if I need to revoke a coder's access, I'd simply disable their login. This beats having to change the password for each website/coder's account.
The reason I can't rely on a version control system is that it'll rarely be used. A lot of the sites on this host will be using Joomla/Wordpress/etc.
So I'm basically looking for a clean and secure way for multiple coders to work on multiple, shared websites on the one host. What do you suggest?